Function at 0x4146b0
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x42911f
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x54
push ebp
mov ebp, ecx
push esi
mov dword [esp + 0x18], 0
mov eax, dword [ebp + 0x2c]
cmp dword [eax + 8], 0
lea esi, [ebp + 0x2c]
je 0x414702
push esi
mov esi, dword [esp + 0x70]
mov ecx, esi
call dword [0x42c544]
mov eax, esi
pop esi
pop ebp
mov ecx, dword [esp + 0x54]
mov dword fs:[0], ecx
add esp, 0x60
ret 4
push ebx
push edi
lea eax, [ebp + 0x1c]
push eax
lea ecx, [esp + 0x28]
call dword [0x42c3d8]
lea ecx, [esp + 0x24]
mov dword [esp + 0x6c], 1
call dword [0x42c2c0]
mov edi, dword [0x42c4a0]
mov bl, 0x20
test al, al
je 0x414ad3
lea ecx, [esp + 0x24]
call dword [0x42c2c4]
mov byte [esp + 0x4c], bl
mov ecx, dword [esp + 0x4c]
push ecx
lea ecx, [esp + 0x16]
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], edx
call dword [0x42c3d0]
lea eax, [ebp + 0x1c]
push eax
lea edx, [esp + 0x2c]
push edx
call fcn.004138e0
mov dword [esp + 0x54], eax
push 0
lea eax, [esp + 0x38]
push str.File_name:__1
push eax
mov byte [esp + 0x80], 2
call fcn.004134c0
add esp, 0x14
mov edx, dword [esp + 0x4c]
lea ecx, [esp + 0x12]
push ecx
push 0
push edx
lea ecx, [esp + 0x3c]
push ecx
mov ecx, eax
mov byte [esp + 0x7c], 3
call dword [0x42c3d4]
push eax
mov ecx, esi
mov byte [esp + 0x70], 4
call edi
mov edx, dword [esp + 0x30]
mov byte [esp + 0x6c], 3
or eax, 0xffffffff
lock xadd dword [edx], eax
jne 0x4147cf
mov ecx, dword [esp + 0x30]
push ecx
call dword [0x42c538]
add esp, 4
mov edx, dword [esp + 0x2c]
mov byte [esp + 0x6c], 2
or eax, 0xffffffff
lock xadd dword [edx], eax
jne 0x4147ef
mov ecx, dword [esp + 0x2c]
push ecx
call dword [0x42c538]
add esp, 4
mov edx, dword [esp + 0x28]
mov byte [esp + 0x6c], 1
or eax, 0xffffffff
lock xadd dword [edx], eax
jne 0x41480f
mov ecx, dword [esp + 0x28]
push ecx
call dword [0x42c538]
add esp, 4
mov byte [esp + 0x4c], bl
mov edx, dword [esp + 0x4c]
push edx
lea ecx, [esp + 0x18]
call dword [0x42c3d0]
mov byte [esp + 0x4c], bl
mov eax, dword [esp + 0x4c]
push eax
lea ecx, [esp + 0x16]
call dword [0x42c3d0]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x50]
push ecx
push edx
lea eax, [esp + 0x20]
push eax
call fcn.004223f0
mov dword [esp + 0x58], eax
push 0
lea ecx, [esp + 0x2c]
push str.File_size:__1___2_bytes_
push ecx
mov byte [esp + 0x84], 5
call fcn.004134c0
add esp, 0x18
mov ecx, dword [esp + 0x4c]
lea edx, [esp + 0x12]
push edx
push 0
push ecx
lea edx, [esp + 0x34]
push edx
mov ecx, eax
mov byte [esp + 0x7c], 6
call dword [0x42c3d4]
mov edx, dword [esp + 0x54]
lea ecx, [esp + 0x14]
push ecx
mov ecx, dword [esp + 0x54]
push 0xa
push 0
push edx
push ecx
lea edx, [esp + 0x40]
push edx
mov ecx, eax
mov byte [esp + 0x84], 7
call dword [0x42c2c8]
push eax
lea eax, [esp + 0x34]
push 0x42fd60
push eax
mov byte [esp + 0x78], 8
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 9
call edi
mov ecx, dword [esp + 0x30]
mov byte [esp + 0x6c], 8
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x4148f1
mov eax, dword [esp + 0x30]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x2c]
mov byte [esp + 0x6c], 7
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x414911
mov eax, dword [esp + 0x2c]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x28]
mov byte [esp + 0x6c], 6
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x414931
mov eax, dword [esp + 0x28]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x1c]
mov byte [esp + 0x6c], 5
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x414951
mov eax, dword [esp + 0x1c]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x18]
mov byte [esp + 0x6c], 1
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x414971
mov eax, dword [esp + 0x18]
push eax
call dword [0x42c538]
add esp, 4
mov byte [esp + 0x4c], bl
mov ecx, dword [esp + 0x4c]
push ecx
lea ecx, [esp + 0x18]
call dword [0x42c3d0]
push 0
lea edx, [esp + 0x1c]
push str.yyyy_MM_dd__hh:mm:ss
push edx
call fcn.004134c0
add esp, 0xc
mov dword [esp + 0x4c], eax
lea eax, [esp + 0x48]
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0x70], 0xa
call dword [0x42c2cc]
mov ecx, dword [esp + 0x4c]
push ecx
lea edx, [esp + 0x20]
push edx
mov ecx, eax
mov byte [esp + 0x74], 0xb
call dword [0x42c314]
mov dword [esp + 0x4c], eax
push 0
lea eax, [esp + 0x2c]
push str.Created_time:__1
push eax
mov byte [esp + 0x78], 0xc
call fcn.004134c0
add esp, 0xc
mov edx, dword [esp + 0x4c]
lea ecx, [esp + 0x14]
push ecx
push 0
push edx
lea ecx, [esp + 0x38]
push ecx
mov ecx, eax
mov byte [esp + 0x7c], 0xd
call dword [0x42c3d4]
push eax
lea edx, [esp + 0x34]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0xe
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0xf
call edi
mov eax, dword [esp + 0x30]
mov byte [esp + 0x6c], 0xe
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x414a44
mov edx, dword [esp + 0x30]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x6c], 0xd
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x414a64
mov edx, dword [esp + 0x2c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x28]
mov byte [esp + 0x6c], 0xc
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x414a84
mov edx, dword [esp + 0x28]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x1c]
mov byte [esp + 0x6c], 0xb
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x414aa4
mov edx, dword [esp + 0x1c]
push edx
call dword [0x42c538]
add esp, 4
lea ecx, [esp + 0x48]
mov byte [esp + 0x6c], 0xa
call dword [0x42c310]
mov eax, dword [esp + 0x18]
mov byte [esp + 0x6c], 1
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x414ad3
mov edx, dword [esp + 0x18]
push edx
call dword [0x42c538]
add esp, 4
lea eax, [esp + 0x58]
push eax
mov ecx, ebp
call fcn.00413a30
lea ecx, [esp + 0x58]
mov byte [esp + 0x6c], 0x10
call dword [0x42c6e0]
test al, al
jne 0x415031
mov ecx, dword [esi]
cmp dword [ecx + 8], 0
je 0x414b40
push 0xffffffffffffffff
push 0x42fd60
call dword [0x42c4d0]
add esp, 8
mov dword [esp + 0x1c], eax
lea edx, [esp + 0x1c]
push edx
mov ecx, esi
mov byte [esp + 0x70], 0x11
call edi
mov eax, dword [esp + 0x1c]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x414b40
mov edx, dword [esp + 0x1c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [ebp + 0x20]
cmp dword [eax + 8], 0
je 0x414bdb
mov byte [esp + 0x4c], bl
mov ecx, dword [esp + 0x4c]
push ecx
lea ecx, [esp + 0x18]
call dword [0x42c3d0]
push 0
lea edx, [esp + 0x2c]
push str.Image_format:__1
push edx
call fcn.004134c0
add esp, 0xc
lea ecx, [esp + 0x14]
push ecx
push 0
lea ecx, [ebp + 0x20]
push ecx
lea edx, [esp + 0x38]
push edx
mov ecx, eax
mov byte [esp + 0x7c], 0x12
call dword [0x42c3d4]
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x13
call edi
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x6c], 0x12
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x414bbb
mov edx, dword [esp + 0x2c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x28]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x414bdb
mov edx, dword [esp + 0x28]
push edx
call dword [0x42c538]
add esp, 4
lea ecx, [esp + 0x58]
call dword [0x42c6ec]
push eax
lea ecx, [esp + 0x5c]
call dword [0x42c6f0]
push eax
call fcn.00414660
add esp, 8
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x414c2b
push 0xffffffffffffffff
push 0x42fd34
call dword [0x42c4d0]
add esp, 8
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x2c]
mov byte [esp + 0x6c], 0x14
mov dword [esp + 0x20], 2
jmp 0x414ce9
mov byte [esp + 0x4c], bl
mov eax, dword [esp + 0x4c]
push eax
lea ecx, [esp + 0x16]
call dword [0x42c3d0]
mov byte [esp + 0x4c], bl
mov ecx, dword [esp + 0x4c]
push ecx
lea ecx, [esp + 0x18]
call dword [0x42c3d0]
push 0xffffffffffffffff
push str._1:_2
call dword [0x42c4d0]
add esp, 8
mov dword [esp + 0x28], eax
lea edx, [esp + 0x14]
push edx
push 0xa
push 0
lea ecx, [esp + 0x64]
mov dword [esp + 0x78], 0x15
mov dword [esp + 0x2c], 4
call dword [0x42c6f0]
cdq
idiv dword [esp + 0x28]
lea ecx, [esp + 0x34]
push eax
lea eax, [esp + 0x48]
push eax
call dword [0x42c344]
mov dword [esp + 0x4c], eax
lea ecx, [esp + 0x12]
push ecx
push 0xa
push 0
lea ecx, [esp + 0x64]
mov dword [esp + 0x78], 0x16
mov dword [esp + 0x2c], 0xc
call dword [0x42c6ec]
cdq
idiv dword [esp + 0x28]
mov ecx, dword [esp + 0x58]
lea edx, [esp + 0x40]
push eax
push edx
call dword [0x42c344]
mov dword [esp + 0x6c], 0x17
mov dword [esp + 0x20], 0x1c
push eax
lea ecx, [esp + 0x34]
call dword [0x42c544]
test byte [esp + 0x20], 0x10
mov dword [esp + 0x6c], 0x19
je 0x414d23
and dword [esp + 0x20], 0xffffffef
mov eax, dword [esp + 0x34]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x414d23
mov edx, dword [esp + 0x34]
push edx
call dword [0x42c538]
add esp, 4
test byte [esp + 0x20], 8
mov byte [esp + 0x6c], 0x1a
je 0x414d4f
and dword [esp + 0x20], 0xfffffff7
mov eax, dword [esp + 0x38]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x414d4f
mov edx, dword [esp + 0x38]
push edx
call dword [0x42c538]
add esp, 4
test byte [esp + 0x20], 4
mov byte [esp + 0x6c], 0x1b
je 0x414d7b
and dword [esp + 0x20], 0xfffffffb
mov eax, dword [esp + 0x28]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x414d7b
mov edx, dword [esp + 0x28]
push edx
call dword [0x42c538]
add esp, 4
test byte [esp + 0x20], 2
mov byte [esp + 0x6c], 0x1c
je 0x414da7
and dword [esp + 0x20], 0xfffffffd
mov eax, dword [esp + 0x2c]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x414da7
mov edx, dword [esp + 0x2c]
push edx
call dword [0x42c538]
add esp, 4
mov byte [esp + 0x4c], bl
mov eax, dword [esp + 0x4c]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
mov byte [esp + 0x50], bl
mov ecx, dword [esp + 0x50]
push ecx
lea ecx, [esp + 0x1c]
call dword [0x42c3d0]
mov byte [esp + 0x50], bl
mov edx, dword [esp + 0x50]
push edx
lea ecx, [esp + 0x1a]
call dword [0x42c3d0]
push 0
lea eax, [esp + 0x50]
push str.Image_size:__1_x__2___3_
push eax
call fcn.004134c0
add esp, 0xc
mov dword [esp + 0x50], eax
lea ecx, [esp + 0x16]
push ecx
push 0xa
push 0
lea ecx, [esp + 0x64]
mov byte [esp + 0x78], 0x1d
call dword [0x42c6f0]
mov ecx, dword [esp + 0x5c]
push eax
lea edx, [esp + 0x58]
push edx
call dword [0x42c344]
mov dword [esp + 0x50], eax
lea eax, [esp + 0x18]
push eax
push 0xa
push 0
lea ecx, [esp + 0x64]
mov byte [esp + 0x78], 0x1e
call dword [0x42c6ec]
push eax
lea ecx, [esp + 0x54]
push ecx
mov ecx, dword [esp + 0x64]
call dword [0x42c344]
lea edx, [esp + 0x1c]
push edx
push 0
lea ecx, [esp + 0x38]
push ecx
lea edx, [esp + 0x4c]
push edx
mov ecx, eax
mov byte [esp + 0x7c], 0x1f
call dword [0x42c3d4]
push eax
lea eax, [esp + 0x40]
push 0x42fd60
push eax
mov byte [esp + 0x78], bl
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x21
call edi
mov ecx, dword [esp + 0x3c]
mov byte [esp + 0x6c], bl
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x414eaa
mov eax, dword [esp + 0x3c]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x40]
mov byte [esp + 0x6c], 0x1f
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x414eca
mov eax, dword [esp + 0x40]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x1e
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x414eea
mov eax, dword [esp + 0x44]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x1d
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x414f0a
mov eax, dword [esp + 0x48]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x1c
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x414f2a
mov eax, dword [esp + 0x4c]
push eax
call dword [0x42c538]
add esp, 4
lea ecx, [esp + 0x24]
call dword [0x42c2c0]
test al, al
je 0x415011
cmp dword [ebp + 0x24], 1
jle 0x415011
mov byte [esp + 0x50], bl
mov ecx, dword [esp + 0x50]
push ecx
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
push 0
lea edx, [esp + 0x48]
push str.Frame_count:__1
push edx
call fcn.004134c0
add esp, 0xc
mov edx, dword [ebp + 0x24]
lea ecx, [esp + 0x1c]
push ecx
push 0xa
push 0
push edx
lea ecx, [esp + 0x58]
push ecx
mov ecx, eax
mov byte [esp + 0x80], 0x22
call dword [0x42c344]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x23
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x24
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x23
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x414fd1
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x22
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x414ff1
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x1c
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415011
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x30]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415031
mov edx, dword [esp + 0x30]
push edx
call dword [0x42c538]
add esp, 4
lea ecx, [esp + 0x58]
call dword [0x42c6e0]
test al, al
jne 0x4164b3
lea eax, [ebp + 0x20]
push eax
call fcn.0040fa60
add esp, 4
test al, al
je 0x4164b3
mov ecx, dword [ebp + 0x3c]
lea eax, [ebp + 0x1c]
push eax
call fcn.00411a90
test al, al
je 0x4164b3
mov eax, dword [ebp + 0x3c]
test byte [eax + 4], 1
je 0x415150
cmp dword [eax + 8], 0xffffffff
je 0x415150
mov byte [esp + 0x50], bl
mov ecx, dword [esp + 0x50]
push ecx
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
push 0
lea edx, [esp + 0x48]
push str.JPEG_Quality:__1
push edx
call fcn.004134c0
add esp, 0xc
mov ecx, dword [ebp + 0x3c]
mov ecx, dword [ecx + 8]
lea edx, [esp + 0x1c]
push edx
push 0xa
push 0
push ecx
lea ecx, [esp + 0x58]
push ecx
mov ecx, eax
mov byte [esp + 0x80], 0x25
call dword [0x42c344]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x26
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x27
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x26
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415110
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x25
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415130
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415150
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [ebp + 0x3c]
mov eax, dword [eax + 4]
shr eax, 1
test al, 1
je 0x4164b3
mov ecx, dword [ebp + 0x3c]
call fcn.004134f0
test al, al
je 0x415281
mov eax, dword [ebp + 0x3c]
mov ecx, dword [eax + 0xc]
movzx eax, word [ecx + 0x58]
cmp ax, 1
je 0x415281
mov byte [esp + 0x50], bl
mov edx, dword [esp + 0x50]
push edx
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
mov ecx, dword [ebp + 0x3c]
lea eax, [esp + 0x40]
push eax
call fcn.0040fcc0
mov dword [esp + 0x50], eax
push 0
lea ecx, [esp + 0x48]
push str.Orientation:__1
push ecx
mov byte [esp + 0x78], 0x28
call fcn.004134c0
add esp, 0xc
mov ecx, dword [esp + 0x50]
lea edx, [esp + 0x1c]
push edx
push 0
push ecx
lea edx, [esp + 0x54]
push edx
mov ecx, eax
mov byte [esp + 0x7c], 0x29
call dword [0x42c3d4]
push eax
lea eax, [esp + 0x50]
push 0x42fd60
push eax
mov byte [esp + 0x78], 0x2a
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x2b
call edi
mov ecx, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x2a
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x415221
mov eax, dword [esp + 0x4c]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x29
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x415241
mov eax, dword [esp + 0x48]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x28
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x415261
mov eax, dword [esp + 0x44]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x40]
mov byte [esp + 0x6c], 0x10
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x415281
mov eax, dword [esp + 0x40]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
call fcn.00413ff0
test al, al
je 0x41538e
mov byte [esp + 0x50], bl
mov ecx, dword [esp + 0x50]
push ecx
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
mov ecx, dword [ebp + 0x3c]
lea edx, [esp + 0x40]
push edx
call fcn.00413840
mov dword [esp + 0x50], eax
push 0
lea eax, [esp + 0x48]
push str.Software:__1
push eax
mov byte [esp + 0x78], 0x2c
call fcn.004134c0
add esp, 0xc
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0x1c]
push ecx
push 0
push edx
lea ecx, [esp + 0x54]
push ecx
mov ecx, eax
mov byte [esp + 0x7c], 0x2d
call dword [0x42c3d4]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x2e
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x2f
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x2e
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x41532e
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x2d
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x41534e
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x2c
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x41536e
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x40]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x41538e
mov edx, dword [esp + 0x40]
push edx
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
call fcn.00413f70
test al, al
je 0x41549b
mov byte [esp + 0x50], bl
mov eax, dword [esp + 0x50]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [ebp + 0x3c]
call fcn.00413700
mov dword [esp + 0x50], eax
push 0
lea edx, [esp + 0x48]
push str.Camera_make:__1
push edx
mov byte [esp + 0x78], 0x30
call fcn.004134c0
add esp, 0xc
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0x1c]
push ecx
push 0
push edx
lea ecx, [esp + 0x54]
push ecx
mov ecx, eax
mov byte [esp + 0x7c], 0x31
call dword [0x42c3d4]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x32
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x33
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x32
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x41543b
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x31
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x41545b
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x30
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x41547b
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x40]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x41549b
mov edx, dword [esp + 0x40]
push edx
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
call fcn.00413fb0
test al, al
je 0x4155a8
mov byte [esp + 0x50], bl
mov eax, dword [esp + 0x50]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [ebp + 0x3c]
call fcn.004137a0
mov dword [esp + 0x50], eax
push 0
lea edx, [esp + 0x48]
push str.Camera_model:__1
push edx
mov byte [esp + 0x78], 0x34
call fcn.004134c0
add esp, 0xc
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0x1c]
push ecx
push 0
push edx
lea ecx, [esp + 0x54]
push ecx
mov ecx, eax
mov byte [esp + 0x7c], 0x35
call dword [0x42c3d4]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x36
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x37
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x36
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415548
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x35
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415568
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x34
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415588
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x40]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x4155a8
mov edx, dword [esp + 0x40]
push edx
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
call fcn.00413510
test al, al
je 0x4156b5
mov byte [esp + 0x50], bl
mov eax, dword [esp + 0x50]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [ebp + 0x3c]
call fcn.0040fe00
mov dword [esp + 0x50], eax
push 0
lea edx, [esp + 0x48]
push str.Original_date_time:__1
push edx
mov byte [esp + 0x78], 0x38
call fcn.004134c0
add esp, 0xc
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0x1c]
push ecx
push 0
push edx
lea ecx, [esp + 0x54]
push ecx
mov ecx, eax
mov byte [esp + 0x7c], 0x39
call dword [0x42c3d4]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x3a
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x3b
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x3a
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415655
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x39
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415675
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x38
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415695
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x40]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x4156b5
mov edx, dword [esp + 0x40]
push edx
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
call fcn.004135e0
test al, al
je 0x4157a0
mov byte [esp + 0x50], bl
mov eax, dword [esp + 0x50]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
push 0
lea ecx, [esp + 0x48]
push str.F_stop:_f__1
push ecx
call fcn.004134c0
add esp, 0xc
mov edx, dword [ebp + 0x3c]
mov ecx, dword [edx + 0xc]
fld qword [ecx + 0x110]
lea edx, [esp + 0x1c]
push edx
push 1
push 0x66
push 0
sub esp, 8
lea ecx, [esp + 0x60]
fstp qword [esp]
push ecx
mov ecx, eax
mov byte [esp + 0x88], 0x3c
call dword [0x42c358]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x3d
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x3e
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x3d
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415760
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x3c
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415780
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x4157a0
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
call fcn.004135c0
test al, al
je 0x4158a7
mov byte [esp + 0x50], bl
mov eax, dword [esp + 0x50]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
push 0
lea ecx, [esp + 0x48]
push str.Exposure_time:_1__1_s
push ecx
call fcn.004134c0
add esp, 0xc
mov ecx, eax
fnstcw word [esp + 0x12]
mov edx, dword [ebp + 0x3c]
mov eax, dword [edx + 0xc]
fld qword [eax + 0x108]
movzx eax, word [esp + 0x12]
fld1
or eax, 0xc00
fdivrp st(1)
mov dword [esp + 0x50], eax
lea edx, [esp + 0x1c]
push edx
push 0xa
push 0
lea edx, [esp + 0x54]
mov byte [esp + 0x78], 0x3f
fldcw word [esp + 0x5c]
fistp qword [esp + 0x5c]
mov eax, dword [esp + 0x5c]
push eax
push edx
fldcw word [esp + 0x26]
call dword [0x42c2d0]
push eax
lea eax, [esp + 0x50]
push 0x42fd60
push eax
mov byte [esp + 0x78], 0x40
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x41
call edi
mov ecx, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x40
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x415867
mov eax, dword [esp + 0x4c]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x3f
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x415887
mov eax, dword [esp + 0x48]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x10
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x4158a7
mov eax, dword [esp + 0x44]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
mov edx, dword [ecx + 0xc]
cmp word [edx + 0x118], 0
je 0x415990
mov byte [esp + 0x50], bl
mov eax, dword [esp + 0x50]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
push 0
lea ecx, [esp + 0x48]
push str.ISO_speed:_ISO__1
push ecx
call fcn.004134c0
add esp, 0xc
mov edx, dword [ebp + 0x3c]
mov ecx, dword [edx + 0xc]
movzx ecx, word [ecx + 0x118]
lea edx, [esp + 0x1c]
push edx
push 0xa
push 0
push ecx
lea ecx, [esp + 0x58]
push ecx
mov ecx, eax
mov byte [esp + 0x80], 0x42
call dword [0x42c2d4]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x43
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x44
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x43
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415950
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x42
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415970
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415990
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
call fcn.00413620
test al, al
je 0x415a7b
mov byte [esp + 0x50], bl
mov eax, dword [esp + 0x50]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
push 0
lea ecx, [esp + 0x48]
push str.Exposure_bias:__1_EV
push ecx
call fcn.004134c0
add esp, 0xc
mov edx, dword [ebp + 0x3c]
mov ecx, dword [edx + 0xc]
fld qword [ecx + 0x128]
lea edx, [esp + 0x1c]
push edx
push 0xffffffffffffffff
push 0x67
push 0
sub esp, 8
lea ecx, [esp + 0x60]
fstp qword [esp]
push ecx
mov ecx, eax
mov byte [esp + 0x88], 0x45
call dword [0x42c358]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x46
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x47
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x46
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415a3b
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x45
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415a5b
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415a7b
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
call fcn.004136c0
test al, al
je 0x415b66
mov byte [esp + 0x50], bl
mov eax, dword [esp + 0x50]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
push 0
lea ecx, [esp + 0x48]
push str.Lens_focal_length:__1_mm
push ecx
call fcn.004134c0
add esp, 0xc
mov edx, dword [ebp + 0x3c]
mov ecx, dword [edx + 0xc]
fld qword [ecx + 0x140]
lea edx, [esp + 0x1c]
push edx
push 0xffffffffffffffff
push 0x67
push 0
sub esp, 8
lea ecx, [esp + 0x60]
fstp qword [esp]
push ecx
mov ecx, eax
mov byte [esp + 0x88], 0x48
call dword [0x42c358]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x49
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x4a
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x49
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415b26
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x48
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415b46
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415b66
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
call fcn.004136a0
test al, al
je 0x415c73
mov byte [esp + 0x50], bl
mov eax, dword [esp + 0x50]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [ebp + 0x3c]
call fcn.00410c80
mov dword [esp + 0x50], eax
push 0
lea edx, [esp + 0x48]
push str.Metering_mode:__1
push edx
mov byte [esp + 0x78], 0x4b
call fcn.004134c0
add esp, 0xc
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0x1c]
push ecx
push 0
push edx
lea ecx, [esp + 0x54]
push ecx
mov ecx, eax
mov byte [esp + 0x7c], 0x4c
call dword [0x42c3d4]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x4d
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x4e
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x4d
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415c13
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x4c
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415c33
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x4b
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415c53
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x40]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415c73
mov edx, dword [esp + 0x40]
push edx
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
call fcn.00413600
test al, al
je 0x415d5e
mov byte [esp + 0x50], bl
mov eax, dword [esp + 0x50]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
push 0
lea ecx, [esp + 0x48]
push str.Subject_distance:__1_m
push ecx
call fcn.004134c0
add esp, 0xc
mov edx, dword [ebp + 0x3c]
mov ecx, dword [edx + 0xc]
fld qword [ecx + 0x138]
lea edx, [esp + 0x1c]
push edx
push 0xffffffffffffffff
push 0x67
push 0
sub esp, 8
lea ecx, [esp + 0x60]
fstp qword [esp]
push ecx
mov ecx, eax
mov byte [esp + 0x88], 0x4f
call dword [0x42c358]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x50
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x51
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x50
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415d1e
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x4f
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415d3e
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415d5e
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [ebp + 0x3c]
mov ecx, dword [eax + 0xc]
cmp word [ecx + 0x14a], 0x40
je 0x415e6f
mov byte [esp + 0x50], bl
mov edx, dword [esp + 0x50]
push edx
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
mov ecx, dword [ebp + 0x3c]
lea eax, [esp + 0x40]
push eax
call fcn.0040ffb0
mov dword [esp + 0x50], eax
push 0
lea ecx, [esp + 0x48]
push str.Flash_mode:__1
push ecx
mov byte [esp + 0x78], 0x52
call fcn.004134c0
add esp, 0xc
mov ecx, dword [esp + 0x50]
lea edx, [esp + 0x1c]
push edx
push 0
push ecx
lea edx, [esp + 0x54]
push edx
mov ecx, eax
mov byte [esp + 0x7c], 0x53
call dword [0x42c3d4]
push eax
lea eax, [esp + 0x50]
push 0x42fd60
push eax
mov byte [esp + 0x78], 0x54
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x55
call edi
mov ecx, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x54
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x415e0f
mov eax, dword [esp + 0x4c]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x53
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x415e2f
mov eax, dword [esp + 0x48]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x52
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x415e4f
mov eax, dword [esp + 0x44]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x40]
mov byte [esp + 0x6c], 0x10
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x415e6f
mov eax, dword [esp + 0x40]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
call fcn.00413680
test al, al
je 0x415f7c
mov byte [esp + 0x50], bl
mov ecx, dword [esp + 0x50]
push ecx
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
mov ecx, dword [ebp + 0x3c]
lea edx, [esp + 0x40]
push edx
call fcn.004108b0
mov dword [esp + 0x50], eax
push 0
lea eax, [esp + 0x48]
push str.Light_source:__1
push eax
mov byte [esp + 0x78], 0x56
call fcn.004134c0
add esp, 0xc
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0x1c]
push ecx
push 0
push edx
lea ecx, [esp + 0x54]
push ecx
mov ecx, eax
mov byte [esp + 0x7c], 0x57
call dword [0x42c3d4]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x58
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x59
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x58
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415f1c
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x57
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415f3c
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x56
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415f5c
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x40]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x415f7c
mov edx, dword [esp + 0x40]
push edx
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
call fcn.00413640
test al, al
je 0x416089
mov byte [esp + 0x50], bl
mov eax, dword [esp + 0x50]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [ebp + 0x3c]
call fcn.004106e0
mov dword [esp + 0x50], eax
push 0
lea edx, [esp + 0x48]
push str.Exposure_program:__1
push edx
mov byte [esp + 0x78], 0x5a
call fcn.004134c0
add esp, 0xc
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0x1c]
push ecx
push 0
push edx
lea ecx, [esp + 0x54]
push ecx
mov ecx, eax
mov byte [esp + 0x7c], 0x5b
call dword [0x42c3d4]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x5c
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x5d
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x5c
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x416029
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x5b
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x416049
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x5a
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x416069
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x40]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x416089
mov edx, dword [esp + 0x40]
push edx
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
call fcn.00413660
test al, al
je 0x416196
mov byte [esp + 0x50], bl
mov eax, dword [esp + 0x50]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [ebp + 0x3c]
call fcn.00410830
mov dword [esp + 0x50], eax
push 0
lea edx, [esp + 0x48]
push str.White_balance:__1
push edx
mov byte [esp + 0x78], 0x5e
call fcn.004134c0
add esp, 0xc
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0x1c]
push ecx
push 0
push edx
lea ecx, [esp + 0x54]
push ecx
mov ecx, eax
mov byte [esp + 0x7c], 0x5f
call dword [0x42c3d4]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x60
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x61
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x60
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x416136
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x5f
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x416156
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x5e
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x416176
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x40]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x416196
mov edx, dword [esp + 0x40]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [ebp + 0x3c]
mov ecx, dword [eax + 0xc]
cmp byte [ecx + 0x180], 0
je 0x4162a6
mov byte [esp + 0x50], bl
mov edx, dword [esp + 0x50]
push edx
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
mov ecx, dword [ebp + 0x3c]
lea eax, [esp + 0x40]
push eax
call fcn.00410ec0
mov dword [esp + 0x50], eax
push 0
lea ecx, [esp + 0x48]
push str.GPS_Latitude:__1
push ecx
mov byte [esp + 0x78], 0x62
call fcn.004134c0
add esp, 0xc
mov ecx, dword [esp + 0x50]
lea edx, [esp + 0x1c]
push edx
push 0
push ecx
lea edx, [esp + 0x54]
push edx
mov ecx, eax
mov byte [esp + 0x7c], 0x63
call dword [0x42c3d4]
push eax
lea eax, [esp + 0x50]
push 0x42fd60
push eax
mov byte [esp + 0x78], 0x64
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x65
call edi
mov ecx, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x64
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x416246
mov eax, dword [esp + 0x4c]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x63
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x416266
mov eax, dword [esp + 0x48]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x62
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x416286
mov eax, dword [esp + 0x44]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [esp + 0x40]
mov byte [esp + 0x6c], 0x10
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x4162a6
mov eax, dword [esp + 0x40]
push eax
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
mov edx, dword [ecx + 0xc]
cmp byte [edx + 0x1a0], 0
je 0x4163b6
mov byte [esp + 0x50], bl
mov eax, dword [esp + 0x50]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [ebp + 0x3c]
call fcn.004112d0
mov dword [esp + 0x50], eax
push 0
lea edx, [esp + 0x48]
push str.GPS_Longitude:__1
push edx
mov byte [esp + 0x78], 0x66
call fcn.004134c0
add esp, 0xc
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0x1c]
push ecx
push 0
push edx
lea ecx, [esp + 0x54]
push ecx
mov ecx, eax
mov byte [esp + 0x7c], 0x67
call dword [0x42c3d4]
push eax
lea edx, [esp + 0x50]
push 0x42fd60
push edx
mov byte [esp + 0x78], 0x68
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x69
call edi
mov eax, dword [esp + 0x4c]
mov byte [esp + 0x6c], 0x68
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x416356
mov edx, dword [esp + 0x4c]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x67
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x416376
mov edx, dword [esp + 0x48]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x66
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x416396
mov edx, dword [esp + 0x44]
push edx
call dword [0x42c538]
add esp, 4
mov eax, dword [esp + 0x40]
mov byte [esp + 0x6c], 0x10
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x4163b6
mov edx, dword [esp + 0x40]
push edx
call dword [0x42c538]
add esp, 4
mov ecx, dword [ebp + 0x3c]
call fcn.004136e0
test al, al
je 0x4164b3
mov byte [esp + 0x50], bl
mov eax, dword [esp + 0x50]
push eax
lea ecx, [esp + 0x20]
call dword [0x42c3d0]
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [ebp + 0x3c]
call fcn.004116e0
mov ebp, eax
push 0
lea edx, [esp + 0x48]
push str.GPS_Altitude:__1
push edx
mov byte [esp + 0x78], 0x6a
call fcn.004134c0
add esp, 0xc
lea ecx, [esp + 0x1c]
push ecx
push 0
push ebp
lea edx, [esp + 0x54]
push edx
mov ecx, eax
mov byte [esp + 0x7c], 0x6b
call dword [0x42c3d4]
push eax
lea eax, [esp + 0x50]
push 0x42fd60
mov bl, 0x6c
push eax
mov byte [esp + 0x78], bl
call fcn.0040b3a0
add esp, 0xc
push eax
mov ecx, esi
mov byte [esp + 0x70], 0x6d
call edi
mov ecx, dword [esp + 0x4c]
mov edi, dword [0x42c538]
mov byte [esp + 0x6c], bl
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x41645f
mov eax, dword [esp + 0x4c]
push eax
call edi
add esp, 4
mov ecx, dword [esp + 0x48]
mov byte [esp + 0x6c], 0x6b
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x41647b
mov eax, dword [esp + 0x48]
push eax
call edi
add esp, 4
mov ecx, dword [esp + 0x44]
mov byte [esp + 0x6c], 0x6a
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x416497
mov eax, dword [esp + 0x44]
push eax
call edi
add esp, 4
mov ecx, dword [esp + 0x40]
mov byte [esp + 0x6c], 0x10
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x4164b3
mov eax, dword [esp + 0x40]
push eax
call edi
add esp, 4
push esi
mov esi, dword [esp + 0x78]
mov ecx, esi
call dword [0x42c544]
or dword [esp + 0x20], 1
lea ecx, [esp + 0x58]
mov byte [esp + 0x6c], 1
call dword [0x42ce84]
lea ecx, [esp + 0x24]
mov byte [esp + 0x6c], 0
call dword [0x42c4c4]
mov ecx, dword [esp + 0x64]
pop edi
pop ebx
mov eax, esi
pop esi
pop ebp
mov dword fs:[0], ecx
add esp, 0x60
ret 4