Function at 0x414e30
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x7034
call fcn.004c6360
mov eax, dword [0x54e864]
xor eax, esp
mov dword [esp + 0x7030], eax
push ebx
push esi
mov esi, dword [esp + 0x7040]
push edi
mov edi, dword [esp + 0x7048]
lea eax, [esp + 0x90]
push eax
mov dword [esp + 0x28], esi
call fcn.0044a5f0
add esp, 4
mov ecx, 0x4d391c
mov eax, 0x551481
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x414e97
test dl, dl
je 0x414e93
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x414e97
add eax, 2
add ecx, 2
test dl, dl
jne 0x414e77
xor eax, eax
jmp 0x414e9c
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
setns bl
push esi
mov byte [esp + 0x13], bl
call fcn.0045cbf0
add esp, 4
test eax, eax
jne 0x414ed8
push 0x4d3988
push eax
call fcn.0042a000
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x7030]
xor ecx, esp
call fcn.004c6212
add esp, 0x7034
ret
movzx ecx, byte [edi + 8]
mov edx, dword [eax + 4]
and edx, 0xffffff00
or ecx, edx
push ebp
push ecx
call fcn.0045cd30
mov ebp, eax
add esp, 4
mov dword [esp + 0x24], ebp
test ebp, ebp
jne 0x414f0e
push 0x4d39d8
push eax
call fcn.0042a000
add esp, 8
jmp 0x4161a5
lea eax, [edi + 4]
push eax
call dword [sym.imp.MSVCR100.dll__localtime32]
push eax
push 0x4d3a18
lea ecx, [esp + 0x64]
push 0x28
push ecx
call dword [sym.imp.MSVCR100.dll_strftime]
mov edx, dword [edi + 0x46]
mov dword [ebp + 0x1c], edx
mov eax, dword [edi + 0x4e]
mov dword [ebp + 0x20], eax
mov ecx, dword [edi + 0x5a]
mov dword [ebp + 0x24], ecx
mov edx, dword [edi + 0x62]
mov eax, 0x551458
mov dword [ebp + 0x28], edx
add esp, 0x14
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414f50
sub eax, edx
je 0x414f87
cmp dword [edi + 0x185], 2
jne 0x414f87
xor eax, eax
jmp 0x414f70
mov cl, byte [eax + 0x551458]
mov byte [esp + eax + 0x58], cl
inc eax
test cl, cl
jne 0x414f70
mov esi, dword [sym.imp.MSVCR100.dll_sprintf]
jmp 0x414fdb
lea eax, [esp + 0x2c]
push eax
call dword [sym.imp.MSVCR100.dll__time64]
lea ecx, [esp + 0x30]
push ecx
lea edx, [esp + 0x3c]
push edx
call dword [sym.imp.MSVCR100.dll__localtime64_s]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x48]
mov esi, dword [sym.imp.MSVCR100.dll_sprintf]
push eax
mov eax, dword [esp + 0x58]
push ecx
mov ecx, dword [esp + 0x58]
push edx
mov edx, dword [esp + 0x58]
add eax, 0x76c
push eax
inc ecx
push ecx
push edx
lea eax, [esp + 0x7c]
push 0x4d3a2c
push eax
call esi
add esp, 0x2c
push 0x32
lea ecx, [esp + 0x108]
push 0
push ecx
mov dword [esp + 0x10c], 0x1773
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp byte [ebp + 0x188], 0
je 0x415039
mov edx, dword [ebp + 0x188]
mov dword [esp + 0x104], edx
mov eax, dword [ebp + 0x18c]
mov dword [esp + 0x108], eax
mov ecx, dword [ebp + 0x190]
mov dword [esp + 0x10c], ecx
mov edx, dword [ebp + 0x194]
mov dword [esp + 0x110], edx
jmp 0x415069
movzx eax, byte [ebp + 0x17]
movzx ecx, byte [ebp + 0x16]
movzx edx, byte [ebp + 0x15]
push eax
movzx eax, byte [ebp + 0x14]
push ecx
movzx ecx, byte [ebp + 0x13]
push edx
movzx edx, byte [ebp + 0x12]
push eax
push ecx
push edx
lea eax, [esp + 0x11c]
push 0x4d3a4c
push eax
call esi
add esp, 0x20
mov eax, dword [esp + 0x60]
mov edx, dword [esp + 0x5c]
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x13e], eax
movzx eax, byte [esp + 0x6a]
mov dword [esp + 0x13a], edx
mov dx, word [esp + 0x68]
mov dword [esp + 0x136], ecx
mov ecx, dword [esp + 0x64]
mov byte [esp + 0x148], al
xor eax, eax
mov word [esp + 0x146], dx
mov dword [esp + 0x142], ecx
mov dword [esp + 0x149], eax
mov dword [esp + 0x14d], eax
mov dword [esp + 0x151], eax
mov dword [esp + 0x155], eax
mov ecx, dword [ebp + 0x30]
push ecx
lea edx, [esp + 0x14d]
push 0x4d3a68
push edx
call esi
movzx ecx, byte [edi + 0xd]
mov eax, dword [edi + 9]
mov dword [esp + 0x165], eax
mov eax, dword [edi + 0x2a]
mov byte [esp + 0x169], cl
mov edx, dword [ebp + 0xc]
mov ecx, dword [edi + 0x2e]
mov dword [esp + 0x16e], eax
mov eax, dword [edi + 0x36]
mov dword [esp + 0x16a], edx
mov edx, dword [edi + 0x32]
mov dword [esp + 0x172], ecx
mov ecx, dword [edi + 0x3a]
mov dword [esp + 0x17a], eax
mov eax, dword [edi + 0x42]
mov dword [esp + 0x176], edx
mov edx, dword [edi + 0x3e]
mov dword [esp + 0x17e], ecx
mov dword [esp + 0x186], eax
mov dword [esp + 0x182], edx
mov ecx, dword [ebp + 4]
mov dword [esp + 0x18a], ecx
movzx edx, byte [ebp + 0x18]
mov byte [esp + 0x18e], dl
movzx eax, byte [ebp + 0x19]
mov byte [esp + 0x18f], al
movzx ecx, byte [ebp + 0x1a]
mov byte [esp + 0x190], cl
movzx edx, byte [ebp + 8]
mov ecx, dword [edi + 0xe]
mov byte [esp + 0x191], dl
movzx eax, byte [ebp + 0x10]
mov edx, dword [edi + 0x12]
mov byte [esp + 0x192], al
mov eax, dword [edi + 0x16]
mov dword [esp + 0x193], ecx
mov ecx, dword [edi + 0x1a]
mov dword [esp + 0x19b], eax
mov eax, dword [edi + 0x22]
mov dword [esp + 0x197], edx
mov edx, dword [edi + 0x1e]
mov dword [esp + 0x19f], ecx
mov ecx, dword [edi + 0x26]
mov dword [esp + 0x1a7], eax
mov dword [esp + 0x1a3], edx
mov dword [esp + 0x1ab], ecx
mov edx, dword [ebp + 0x199]
mov dword [esp + 0x1af], edx
mov eax, dword [ebp + 0x19d]
mov dword [esp + 0x1b3], eax
mov ecx, dword [ebp + 0x1a1]
mov eax, dword [edi + 0x408]
mov dword [esp + 0x1b7], ecx
mov edx, dword [ebp + 0x1a5]
add esp, 0xc
mov dword [esp + 0x1af], edx
mov dword [esp + 0x1b3], eax
test bl, bl
je 0x415334
mov eax, dword [edi + 0x2dd]
mov ecx, dword [edi + 0x2d9]
mov ebp, eax
sar ebp, 0x18
mov edx, eax
sar edx, 0x10
and edx, 0xff
and ebp, 0xff
add ebp, edx
mov esi, eax
sar esi, 0x1f
mov esi, eax
sar esi, 0x1f
mov edx, eax
sar edx, 8
and edx, 0xff
add ebp, edx
mov esi, eax
sar esi, 0x1f
mov esi, eax
and esi, 0xff
add ebp, esi
mov edx, eax
sar edx, 0x1f
mov esi, eax
mov edx, ecx
shrd edx, esi, 0x18
and edx, 0xff
add ebp, edx
sar esi, 0x18
mov esi, eax
mov edx, ecx
shrd edx, esi, 0x10
and edx, 0xff
add ebp, edx
shrd ecx, eax, 8
sar esi, 0x10
sar eax, 8
mov eax, dword [edi + 0x2d9]
and ecx, 0xff
add ebp, ecx
mov ecx, dword [edi + 0x2e1]
and eax, 0xff
add ebp, eax
mov eax, dword [edi + 0x2e5]
mov ebx, eax
sar ebx, 0x18
and ebx, 0xff
mov edx, eax
sar edx, 0x10
and edx, 0xff
add ebx, edx
mov esi, eax
sar esi, 0x1f
mov esi, eax
sar esi, 0x1f
mov edx, eax
sar edx, 8
and edx, 0xff
add ebx, edx
mov esi, eax
sar esi, 0x1f
mov esi, eax
and esi, 0xff
add ebx, esi
mov edx, eax
sar edx, 0x1f
mov edx, ecx
mov esi, eax
shrd edx, esi, 0x18
and edx, 0xff
add ebx, edx
sar esi, 0x18
mov edx, ecx
mov esi, eax
shrd edx, esi, 0x10
and edx, 0xff
sar esi, 0x10
add ebx, edx
shrd ecx, eax, 8
sar eax, 8
mov eax, dword [edi + 0x2e1]
and ecx, 0xff
add ebx, ecx
jmp 0x415375
mov eax, dword [edi + 0x2d9]
movzx ecx, byte [edi + 0x2da]
movzx ebp, byte [edi + 0x2db]
movzx ebx, byte [edi + 0x2e3]
mov edx, eax
add ebp, ecx
movzx ecx, byte [edi + 0x2e2]
shr edx, 0x18
add ebp, edx
and eax, 0xff
add ebp, eax
mov eax, dword [edi + 0x2e1]
mov edx, eax
add ebx, ecx
shr edx, 0x18
add ebx, edx
mov cl, byte [edi + 0x3eb]
mov dl, byte [edi + 0x3ea]
movzx esi, word [edi + 0x3e7]
and eax, 0xff
add ebx, eax
movzx eax, byte [edi + 0x3e9]
mov byte [esp + 0x14], al
movzx eax, byte [edi + 0x3e6]
mov byte [esp + 0x18], al
movzx eax, byte [edi + 0x3e5]
push ecx
mov byte [esp + 0x20], al
mov eax, dword [esp + 0x18]
push edx
push eax
mov eax, dword [esp + 0x24]
push esi
push eax
mov eax, dword [esp + 0x30]
push eax
call fcn.0040df80
add esp, 0x18
test al, al
je 0x4153fe
movzx eax, byte [esp + 0x14]
movzx ecx, cl
push ecx
movzx edx, dl
push edx
movzx edx, byte [esp + 0x20]
push eax
movzx eax, byte [esp + 0x28]
push esi
push edx
push eax
lea ecx, [esp + 0x70]
push 0x4d3a70
push ecx
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 0x20
jmp 0x415411
lea edx, [esp + 0x58]
push 0x4d3a90
push edx
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 8
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x60]
mov dword [esp + 0x1b7], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x1bb], ecx
mov cx, word [esp + 0x68]
mov dword [esp + 0x1c3], eax
mov al, byte [esp + 0x13]
mov dword [esp + 0x1bf], edx
mov dl, byte [esp + 0x6a]
mov word [esp + 0x1c7], cx
mov ecx, dword [edi + 0x2c5]
mov byte [esp + 0x1c9], dl
mov dword [esp + 0x1ca], ecx
test al, al
je 0x4154ce
mov edx, dword [edi + 0x2c9]
mov ecx, dword [edi + 0x2cd]
mov dword [esp + 0x1ce], edx
mov edx, dword [edi + 0x2d1]
mov dword [esp + 0x1d2], ecx
mov ecx, dword [edi + 0x2d9]
mov dword [esp + 0x1d6], edx
mov edx, dword [edi + 0x2dd]
mov dword [esp + 0x1da], ecx
mov ecx, dword [edi + 0x2e1]
mov dword [esp + 0x1de], edx
mov edx, dword [edi + 0x2e5]
mov dword [esp + 0x1e2], ecx
mov dword [esp + 0x1e6], edx
lea esi, [esp + 0x1ea]
jmp 0x4154fc
mov edx, dword [edi + 0x2cd]
mov ecx, dword [edi + 0x2d9]
mov dword [esp + 0x1ce], edx
mov edx, dword [edi + 0x2e1]
mov dword [esp + 0x1d2], ecx
mov dword [esp + 0x1d6], edx
lea esi, [esp + 0x1da]
mov ecx, dword [edi + 0x2d5]
mov edx, dword [edi + 0x2e9]
mov dword [esi], ecx
mov ecx, dword [edi + 0x2ed]
mov dword [esi + 4], edx
mov edx, dword [edi + 0x381]
mov dword [esi + 8], ecx
mov dword [esi + 0xc], edx
test al, al
je 0x415531
mov ecx, dword [edi + 0x385]
mov dword [esi + 0x10], ecx
add esi, 0x14
jmp 0x415534
add esi, 0x10
mov ecx, dword [edi + 0x389]
mov edx, dword [edi + 0x38d]
mov dword [esi], ecx
mov dword [esi + 4], edx
test al, al
je 0x415557
mov ecx, dword [edi + 0x391]
mov dword [esi + 8], ecx
add esi, 0xc
jmp 0x41555a
add esi, 8
mov ecx, dword [edi + 0x395]
mov edx, dword [edi + 0x399]
mov dword [esi], ecx
mov ecx, dword [edi + 0x39d]
mov dword [esi + 4], edx
mov edx, dword [edi + 0x3a1]
mov dword [esi + 8], ecx
mov ecx, dword [edi + 0x3a5]
mov dword [esi + 0xc], edx
mov edx, dword [edi + 0x3a9]
mov dword [esi + 0x10], ecx
mov ecx, dword [edi + 0x3ad]
mov dword [esi + 0x14], edx
mov edx, dword [edi + 0x3b1]
mov dword [esi + 0x18], ecx
mov ecx, dword [edi + 0x3b5]
mov dword [esi + 0x1c], edx
mov edx, dword [edi + 0x3b9]
mov dword [esi + 0x20], ecx
mov ecx, dword [edi + 0x3d9]
mov dword [esi + 0x24], edx
mov edx, dword [edi + 0x3dd]
mov dword [esi + 0x28], ecx
mov ecx, dword [edi + 0x3e1]
mov dword [esi + 0x2c], edx
mov edx, dword [edi + 0x3f0]
mov dword [esi + 0x30], ecx
mov ecx, dword [edi + 0x3f4]
mov dword [esi + 0x34], edx
mov edx, dword [edi + 0x3f8]
mov dword [esi + 0x38], ecx
mov ecx, dword [edi + 0x3fc]
mov dword [esi + 0x3c], edx
mov edx, dword [edi + 0x400]
mov dword [esi + 0x40], ecx
mov ecx, dword [edi + 0x404]
mov dword [esi + 0x44], edx
mov edx, dword [edi + 0x3ec]
mov dword [esi + 0x48], ecx
mov ecx, dword [edi + 0x30d]
mov dword [esi + 0x4c], edx
mov dword [esi + 0x50], ebp
mov dword [esi + 0x54], ebx
mov dword [esi + 0x58], ecx
test al, al
je 0x4156ad
mov edx, dword [edi + 0x311]
mov ecx, dword [edi + 0x315]
mov dword [esi + 0x5c], edx
mov edx, dword [edi + 0x319]
mov dword [esi + 0x60], ecx
mov ecx, dword [edi + 0x31d]
mov dword [esi + 0x64], edx
mov edx, dword [edi + 0x321]
mov dword [esi + 0x68], ecx
mov ecx, dword [edi + 0x325]
mov dword [esi + 0x6c], edx
mov edx, dword [edi + 0x329]
mov dword [esi + 0x70], ecx
mov ecx, dword [edi + 0x32d]
mov dword [esi + 0x74], edx
mov edx, dword [edi + 0x331]
mov dword [esi + 0x78], ecx
mov ecx, dword [edi + 0x335]
mov dword [esi + 0x7c], edx
mov edx, dword [edi + 0x339]
mov dword [esi + 0x80], ecx
mov ecx, dword [edi + 0x33d]
mov dword [esi + 0x84], edx
mov edx, dword [edi + 0x341]
mov dword [esi + 0x88], ecx
mov dword [esi + 0x8c], edx
add esi, 0x90
jmp 0x4156e6
mov edx, dword [edi + 0x315]
mov ecx, dword [edi + 0x31d]
mov dword [esi + 0x5c], edx
mov edx, dword [edi + 0x325]
mov dword [esi + 0x60], ecx
mov ecx, dword [edi + 0x32d]
mov dword [esi + 0x64], edx
mov edx, dword [edi + 0x335]
mov dword [esi + 0x68], ecx
mov ecx, dword [edi + 0x33d]
mov dword [esi + 0x6c], edx
mov dword [esi + 0x70], ecx
add esi, 0x74
mov edx, dword [edi + 0x2f1]
mov ecx, dword [edi + 0x2f5]
mov dword [esi], edx
mov edx, dword [edi + 0x2f9]
mov dword [esi + 8], edx
mov edx, dword [edi + 0x301]
mov dword [esi + 4], ecx
mov ecx, dword [edi + 0x2fd]
mov dword [esi + 0x10], edx
mov edx, dword [edi + 0x309]
mov dword [esi + 0xc], ecx
mov ecx, dword [edi + 0x305]
mov dword [esi + 0x18], edx
mov edx, dword [edi + 0x361]
mov dword [esi + 0x14], ecx
test al, al
je 0x415787
mov eax, dword [edi + 0x359]
mov ecx, dword [edi + 0x35d]
mov dword [esi + 0x1c], eax
mov eax, dword [edi + 0x365]
mov dword [esi + 0x20], ecx
mov ecx, dword [edi + 0x369]
mov dword [esi + 0x24], edx
mov edx, dword [edi + 0x36d]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0x371]
mov dword [esi + 0x2c], ecx
mov ecx, dword [edi + 0x375]
mov dword [esi + 0x30], edx
mov edx, dword [edi + 0x379]
mov dword [esi + 0x34], eax
mov eax, dword [edi + 0x37d]
mov dword [esi + 0x38], ecx
mov dword [esi + 0x3c], edx
mov dword [esi + 0x40], eax
add esi, 0x44
jmp 0x4157b1
mov ecx, dword [edi + 0x359]
mov eax, dword [edi + 0x369]
mov dword [esi + 0x1c], ecx
mov ecx, dword [edi + 0x371]
mov dword [esi + 0x20], edx
mov edx, dword [edi + 0x379]
mov dword [esi + 0x24], eax
mov dword [esi + 0x28], ecx
mov dword [esi + 0x2c], edx
add esi, 0x30
mov ebx, dword [edi + 0x408]
mov eax, dword [edi + 0x345]
mov ecx, dword [edi + 0x349]
mov edx, dword [edi + 0x34d]
mov dword [esi], eax
mov eax, dword [edi + 0x351]
mov dword [esi + 4], ecx
mov ecx, dword [edi + 0x355]
add ebx, ebx
mov dword [esi + 8], edx
add ebx, ebx
push ebx
lea edx, [edi + 0x40c]
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], ecx
push edx
add esi, 0x14
push esi
call sub.MSVCR100.dll_memcpy
add esp, 0xc
add esi, ebx
cmp byte [esp + 0x13], 0
je 0x415a28
mov eax, dword [edi + 0x4d4]
mov dword [esi], eax
mov ecx, dword [edi + 0x4d8]
mov dword [esi + 4], ecx
mov edx, dword [edi + 0x4e4]
mov dword [esi + 8], edx
mov eax, dword [edi + 0x4e8]
mov dword [esi + 0xc], eax
mov ecx, dword [edi + 0x4f4]
mov dword [esi + 0x10], ecx
mov edx, dword [edi + 0x4f8]
mov dword [esi + 0x14], edx
mov eax, dword [edi + 0x4dc]
mov dword [esi + 0x18], eax
mov ecx, dword [edi + 0x4e0]
mov dword [esi + 0x1c], ecx
mov edx, dword [edi + 0x4ec]
mov dword [esi + 0x20], edx
mov eax, dword [edi + 0x4f0]
mov dword [esi + 0x24], eax
mov ecx, dword [edi + 0x4fc]
mov dword [esi + 0x28], ecx
mov edx, dword [edi + 0x500]
mov dword [esi + 0x2c], edx
mov eax, dword [edi + 0x504]
mov dword [esi + 0x30], eax
mov ecx, dword [edi + 0x508]
mov dword [esi + 0x34], ecx
mov edx, dword [edi + 0x50c]
mov dword [esi + 0x38], edx
mov eax, dword [edi + 0x510]
mov dword [esi + 0x3c], eax
mov ecx, dword [edi + 0x514]
mov dword [esi + 0x40], ecx
mov edx, dword [edi + 0x518]
mov dword [esi + 0x44], edx
mov eax, dword [edi + 0x51c]
mov dword [esi + 0x48], eax
mov ecx, dword [edi + 0x520]
mov dword [esi + 0x4c], ecx
mov edx, dword [edi + 0x524]
mov dword [esi + 0x50], edx
mov eax, dword [edi + 0x528]
mov dword [esi + 0x54], eax
mov ecx, dword [edi + 0x52c]
mov dword [esi + 0x58], ecx
mov edx, dword [edi + 0x530]
mov dword [esi + 0x5c], edx
mov eax, dword [edi + 0x534]
mov dword [esi + 0x60], eax
mov ecx, dword [edi + 0x538]
mov dword [esi + 0x64], ecx
mov edx, dword [edi + 0x53c]
mov dword [esi + 0x68], edx
mov eax, dword [edi + 0x540]
mov dword [esi + 0x6c], eax
mov eax, dword [edi + 0x5e]
mov ecx, dword [edi + 0x5a]
mov ebp, eax
sar ebp, 0x18
mov edx, eax
sar edx, 0x10
and edx, 0xff
and ebp, 0xff
add ebp, edx
mov ebx, eax
sar ebx, 0x1f
mov ebx, eax
sar ebx, 0x1f
mov edx, eax
sar edx, 8
and edx, 0xff
mov ebx, eax
sar ebx, 0x1f
add ebp, edx
mov ebx, eax
mov edx, eax
and ebx, 0xff
add esi, 0x70
sar edx, 0x1f
add ebp, ebx
mov edx, ecx
mov ebx, eax
shrd edx, ebx, 0x18
and edx, 0xff
add ebp, edx
mov edx, ecx
shrd ecx, eax, 8
sar ebx, 0x18
and ecx, 0xff
mov ebx, eax
shrd edx, ebx, 0x10
and edx, 0xff
add ebp, edx
add ebp, ecx
mov ecx, dword [edi + 0x62]
mov dword [esp + 0x1c], ecx
sar eax, 8
mov eax, dword [edi + 0x5a]
sar ebx, 0x10
and eax, 0xff
add ebp, eax
mov eax, dword [edi + 0x66]
mov ebx, eax
sar ebx, 0x18
and ebx, 0xff
mov edx, eax
sar edx, 0x10
and edx, 0xff
add ebx, edx
mov ecx, eax
sar ecx, 0x1f
mov ecx, eax
sar ecx, 0x1f
mov edx, eax
sar edx, 8
and edx, 0xff
add ebx, edx
mov ecx, eax
sar ecx, 0x1f
mov ecx, eax
and ecx, 0xff
add ebx, ecx
mov edx, eax
sar edx, 0x1f
mov edx, dword [esp + 0x1c]
mov ecx, eax
shrd edx, ecx, 0x18
and edx, 0xff
add ebx, edx
mov edx, dword [esp + 0x1c]
sar ecx, 0x18
mov ecx, eax
shrd edx, ecx, 0x10
sar ecx, 0x10
mov ecx, dword [esp + 0x1c]
shrd ecx, eax, 8
and edx, 0xff
add ebx, edx
mov edx, dword [edi + 0x62]
and ecx, 0xff
add ebx, ecx
and edx, 0xff
sar eax, 8
add ebx, edx
jmp 0x415ade
mov ecx, dword [edi + 0x4d4]
mov dword [esi], ecx
mov edx, dword [edi + 0x4e4]
mov dword [esi + 4], edx
mov eax, dword [edi + 0x4f4]
mov dword [esi + 8], eax
mov ecx, dword [edi + 0x4dc]
mov dword [esi + 0xc], ecx
mov edx, dword [edi + 0x4ec]
mov dword [esi + 0x10], edx
mov eax, dword [edi + 0x4fc]
mov dword [esi + 0x14], eax
mov ecx, dword [edi + 0x504]
mov dword [esi + 0x18], ecx
mov edx, dword [edi + 0x50c]
mov dword [esi + 0x1c], edx
mov eax, dword [edi + 0x514]
mov dword [esi + 0x20], eax
mov ecx, dword [edi + 0x51c]
mov dword [esi + 0x24], ecx
mov edx, dword [edi + 0x524]
mov dword [esi + 0x28], edx
mov eax, dword [edi + 0x52c]
mov dword [esi + 0x2c], eax
mov ecx, dword [edi + 0x534]
mov dword [esi + 0x30], ecx
mov edx, dword [edi + 0x53c]
mov dword [esi + 0x34], edx
mov eax, dword [edi + 0x5a]
movzx ecx, byte [edi + 0x5b]
movzx ebp, byte [edi + 0x5c]
movzx ebx, byte [edi + 0x64]
mov edx, eax
add ebp, ecx
movzx ecx, byte [edi + 0x63]
shr edx, 0x18
add ebp, edx
and eax, 0xff
add ebp, eax
mov eax, dword [edi + 0x62]
mov edx, eax
add ebx, ecx
shr edx, 0x18
add ebx, edx
and eax, 0xff
add esi, 0x38
add ebx, eax
movzx eax, byte [edi + 0x16a]
movzx ecx, byte [edi + 0x16c]
movzx edx, byte [edi + 0x16b]
mov byte [esp + 0x1c], al
movzx eax, byte [edi + 0x167]
mov byte [esp + 0x18], al
movzx eax, byte [edi + 0x166]
push ecx
mov byte [esp + 0x18], al
mov eax, dword [esp + 0x20]
push edx
push eax
movzx eax, word [edi + 0x168]
push eax
mov eax, dword [esp + 0x28]
push eax
mov eax, dword [esp + 0x28]
push eax
call fcn.0040df80
add esp, 0x18
test al, al
je 0x415b63
movzx eax, byte [esp + 0x1c]
push ecx
movzx ecx, word [edi + 0x168]
push edx
movzx edx, byte [esp + 0x20]
push eax
movzx eax, byte [esp + 0x20]
push ecx
push edx
push eax
lea ecx, [esp + 0x70]
push 0x4d3aa4
push ecx
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 0x20
jmp 0x415b76
lea edx, [esp + 0x58]
push 0x4d3ac4
push edx
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 8
mov eax, dword [esp + 0x58]
mov dword [esi], eax
mov ecx, dword [esp + 0x5c]
mov dword [esi + 4], ecx
mov edx, dword [esp + 0x60]
mov dword [esi + 8], edx
mov eax, dword [esp + 0x64]
mov dword [esi + 0xc], eax
mov cx, word [esp + 0x68]
mov al, byte [esp + 0x13]
mov word [esi + 0x10], cx
mov dl, byte [esp + 0x6a]
mov byte [esi + 0x12], dl
mov ecx, dword [edi + 0x46]
mov dword [esi + 0x13], ecx
test al, al
je 0x415bde
mov edx, dword [edi + 0x4a]
mov dword [esi + 0x17], edx
mov ecx, dword [edi + 0x4e]
mov dword [esi + 0x1b], ecx
mov edx, dword [edi + 0x52]
mov dword [esi + 0x1f], edx
mov ecx, dword [edi + 0x5a]
mov dword [esi + 0x23], ecx
mov edx, dword [edi + 0x5e]
mov dword [esi + 0x27], edx
mov ecx, dword [edi + 0x62]
mov dword [esi + 0x2b], ecx
mov edx, dword [edi + 0x66]
mov dword [esi + 0x2f], edx
add esi, 0x33
jmp 0x415bf3
mov edx, dword [edi + 0x4e]
mov dword [esi + 0x17], edx
mov ecx, dword [edi + 0x5a]
mov dword [esi + 0x1b], ecx
mov edx, dword [edi + 0x62]
mov dword [esi + 0x1f], edx
add esi, 0x23
mov ecx, dword [edi + 0x56]
mov dword [esi], ecx
mov edx, dword [edi + 0x6a]
mov dword [esi + 4], edx
mov ecx, dword [edi + 0x6e]
mov dword [esi + 8], ecx
mov edx, dword [edi + 0x102]
mov dword [esi + 0xc], edx
test al, al
je 0x415c1f
mov ecx, dword [edi + 0x106]
mov dword [esi + 0x10], ecx
add esi, 0x14
jmp 0x415c22
add esi, 0x10
mov ecx, dword [edi + 0x10a]
mov dword [esi], ecx
mov edx, dword [edi + 0x10e]
mov dword [esi + 4], edx
test al, al
je 0x415c45
mov ecx, dword [edi + 0x112]
mov dword [esi + 8], ecx
add esi, 0xc
jmp 0x415c48
add esi, 8
mov ecx, dword [edi + 0x116]
mov dword [esi], ecx
mov edx, dword [edi + 0x11a]
mov dword [esi + 4], edx
mov ecx, dword [edi + 0x11e]
mov dword [esi + 8], ecx
mov edx, dword [edi + 0x122]
mov dword [esi + 0xc], edx
mov ecx, dword [edi + 0x126]
mov dword [esi + 0x10], ecx
mov edx, dword [edi + 0x12a]
mov dword [esi + 0x14], edx
mov ecx, dword [edi + 0x12e]
mov dword [esi + 0x18], ecx
mov edx, dword [edi + 0x132]
mov dword [esi + 0x1c], edx
mov ecx, dword [edi + 0x136]
mov dword [esi + 0x20], ecx
mov edx, dword [edi + 0x13a]
mov dword [esi + 0x24], edx
mov ecx, dword [edi + 0x15a]
mov dword [esi + 0x28], ecx
mov edx, dword [edi + 0x15e]
mov dword [esi + 0x2c], edx
mov ecx, dword [edi + 0x162]
mov dword [esi + 0x30], ecx
mov edx, dword [edi + 0x171]
mov dword [esi + 0x34], edx
mov ecx, dword [edi + 0x175]
mov dword [esi + 0x38], ecx
mov edx, dword [edi + 0x179]
mov dword [esi + 0x3c], edx
mov ecx, dword [edi + 0x17d]
mov dword [esi + 0x40], ecx
mov edx, dword [edi + 0x181]
mov dword [esi + 0x44], edx
mov ecx, dword [edi + 0x185]
mov dword [esi + 0x48], ecx
mov edx, dword [edi + 0x16d]
mov dword [esi + 0x4c], edx
mov dword [esi + 0x50], ebp
mov dword [esi + 0x54], ebx
mov ecx, dword [edi + 0x8e]
mov dword [esi + 0x58], ecx
test al, al
je 0x415d9b
mov edx, dword [edi + 0x92]
mov dword [esi + 0x5c], edx
mov ecx, dword [edi + 0x96]
mov dword [esi + 0x60], ecx
mov edx, dword [edi + 0x9a]
mov dword [esi + 0x64], edx
mov ecx, dword [edi + 0x9e]
mov dword [esi + 0x68], ecx
mov edx, dword [edi + 0xa2]
mov dword [esi + 0x6c], edx
mov ecx, dword [edi + 0xa6]
mov dword [esi + 0x70], ecx
mov edx, dword [edi + 0xaa]
mov dword [esi + 0x74], edx
mov ecx, dword [edi + 0xae]
mov dword [esi + 0x78], ecx
mov edx, dword [edi + 0xb2]
mov dword [esi + 0x7c], edx
mov ecx, dword [edi + 0xb6]
mov dword [esi + 0x80], ecx
mov edx, dword [edi + 0xba]
mov dword [esi + 0x84], edx
mov ecx, dword [edi + 0xbe]
mov dword [esi + 0x88], ecx
mov edx, dword [edi + 0xc2]
mov dword [esi + 0x8c], edx
add esi, 0x90
jmp 0x415dd4
mov edx, dword [edi + 0x96]
mov dword [esi + 0x5c], edx
mov ecx, dword [edi + 0x9e]
mov dword [esi + 0x60], ecx
mov edx, dword [edi + 0xa6]
mov dword [esi + 0x64], edx
mov ecx, dword [edi + 0xae]
mov dword [esi + 0x68], ecx
mov edx, dword [edi + 0xb6]
mov dword [esi + 0x6c], edx
mov ecx, dword [edi + 0xbe]
mov dword [esi + 0x70], ecx
add esi, 0x74
mov edx, dword [edi + 0x72]
mov dword [esi], edx
mov ecx, dword [edi + 0x76]
mov dword [esi + 4], ecx
mov edx, dword [edi + 0x7a]
mov dword [esi + 8], edx
mov ecx, dword [edi + 0x7e]
mov dword [esi + 0xc], ecx
mov edx, dword [edi + 0x82]
mov dword [esi + 0x10], edx
mov ecx, dword [edi + 0x86]
mov dword [esi + 0x14], ecx
mov edx, dword [edi + 0x8a]
mov dword [esi + 0x18], edx
test al, al
je 0x415e69
mov eax, dword [edi + 0xda]
mov dword [esi + 0x1c], eax
mov ecx, dword [edi + 0xde]
mov dword [esi + 0x20], ecx
mov edx, dword [edi + 0xe2]
mov dword [esi + 0x24], edx
mov eax, dword [edi + 0xe6]
mov dword [esi + 0x28], eax
mov ecx, dword [edi + 0xea]
mov dword [esi + 0x2c], ecx
mov edx, dword [edi + 0xee]
mov dword [esi + 0x30], edx
mov eax, dword [edi + 0xf2]
mov dword [esi + 0x34], eax
mov ecx, dword [edi + 0xf6]
mov dword [esi + 0x38], ecx
mov edx, dword [edi + 0xfa]
mov dword [esi + 0x3c], edx
mov eax, dword [edi + 0xfe]
mov dword [esi + 0x40], eax
add esi, 0x44
jmp 0x415e99
mov ecx, dword [edi + 0xda]
mov dword [esi + 0x1c], ecx
mov edx, dword [edi + 0xe2]
mov dword [esi + 0x20], edx
mov eax, dword [edi + 0xea]
mov dword [esi + 0x24], eax
mov ecx, dword [edi + 0xf2]
mov dword [esi + 0x28], ecx
mov edx, dword [edi + 0xfa]
mov dword [esi + 0x2c], edx
add esi, 0x30
mov eax, dword [edi + 0xc6]
mov dword [esi], eax
mov ecx, dword [edi + 0xca]
mov dword [esi + 4], ecx
mov edx, dword [edi + 0xce]
mov dword [esi + 8], edx
mov eax, dword [edi + 0xd2]
mov dword [esi + 0xc], eax
mov ecx, dword [edi + 0xd6]
mov dword [esi + 0x10], ecx
mov edx, dword [edi + 0x189]
add edx, edx
add edx, edx
push edx
lea eax, [edi + 0x18d]
push eax
add esi, 0x14
push esi
call sub.MSVCR100.dll_memcpy
mov ecx, dword [edi + 0x189]
add esp, 0xc
cmp byte [esp + 0x13], 0
lea esi, [esi + ecx*4]
je 0x415ffa
mov edx, dword [edi + 0x255]
mov dword [esi], edx
mov eax, dword [edi + 0x259]
mov dword [esi + 4], eax
mov ecx, dword [edi + 0x265]
mov dword [esi + 8], ecx
mov edx, dword [edi + 0x269]
mov dword [esi + 0xc], edx
mov eax, dword [edi + 0x275]
mov dword [esi + 0x10], eax
mov ecx, dword [edi + 0x279]
mov dword [esi + 0x14], ecx
mov edx, dword [edi + 0x25d]
mov dword [esi + 0x18], edx
mov eax, dword [edi + 0x261]
mov dword [esi + 0x1c], eax
mov ecx, dword [edi + 0x26d]
mov dword [esi + 0x20], ecx
mov edx, dword [edi + 0x271]
mov dword [esi + 0x24], edx
mov eax, dword [edi + 0x27d]
mov dword [esi + 0x28], eax
mov ecx, dword [edi + 0x281]
mov dword [esi + 0x2c], ecx
mov edx, dword [edi + 0x285]
mov dword [esi + 0x30], edx
mov eax, dword [edi + 0x289]
mov dword [esi + 0x34], eax
mov ecx, dword [edi + 0x28d]
mov dword [esi + 0x38], ecx
mov edx, dword [edi + 0x291]
mov dword [esi + 0x3c], edx
mov eax, dword [edi + 0x295]
mov dword [esi + 0x40], eax
mov ecx, dword [edi + 0x299]
mov dword [esi + 0x44], ecx
mov edx, dword [edi + 0x29d]
mov dword [esi + 0x48], edx
mov eax, dword [edi + 0x2a1]
mov dword [esi + 0x4c], eax
mov ecx, dword [edi + 0x2a5]
mov dword [esi + 0x50], ecx
mov edx, dword [edi + 0x2a9]
mov dword [esi + 0x54], edx
mov eax, dword [edi + 0x2ad]
mov dword [esi + 0x58], eax
mov ecx, dword [edi + 0x2b1]
mov dword [esi + 0x5c], ecx
mov edx, dword [edi + 0x2b5]
mov dword [esi + 0x60], edx
mov eax, dword [edi + 0x2b9]
mov dword [esi + 0x64], eax
mov ecx, dword [edi + 0x2bd]
mov dword [esi + 0x68], ecx
mov edx, dword [edi + 0x2c1]
mov dword [esi + 0x6c], edx
add esi, 0x70
jmp 0x41607a
mov eax, dword [edi + 0x255]
mov dword [esi], eax
mov ecx, dword [edi + 0x265]
mov dword [esi + 4], ecx
mov edx, dword [edi + 0x275]
mov dword [esi + 8], edx
mov eax, dword [edi + 0x25d]
mov dword [esi + 0xc], eax
mov ecx, dword [edi + 0x26d]
mov dword [esi + 0x10], ecx
mov edx, dword [edi + 0x27d]
mov dword [esi + 0x14], edx
mov eax, dword [edi + 0x285]
mov dword [esi + 0x18], eax
mov ecx, dword [edi + 0x28d]
mov dword [esi + 0x1c], ecx
mov edx, dword [edi + 0x295]
mov dword [esi + 0x20], edx
mov eax, dword [edi + 0x29d]
mov dword [esi + 0x24], eax
mov ecx, dword [edi + 0x2a5]
mov dword [esi + 0x28], ecx
mov edx, dword [edi + 0x2ad]
mov dword [esi + 0x2c], edx
mov eax, dword [edi + 0x2b5]
mov dword [esi + 0x30], eax
mov ecx, dword [edi + 0x2bd]
mov dword [esi + 0x34], ecx
add esi, 0x38
mov edx, dword [edi + 0x54c]
mov dword [esi], edx
mov eax, dword [edi + 0x550]
mov dword [esi + 4], eax
mov ecx, dword [edi + 0x554]
mov dword [esi + 8], ecx
mov edx, dword [edi + 0x558]
mov dword [esi + 0xc], edx
mov eax, dword [edi + 0x55c]
mov dword [esi + 0x10], eax
mov ecx, dword [edi + 0x560]
mov dword [esi + 0x14], ecx
mov edx, dword [edi + 0x564]
mov dword [esi + 0x18], edx
mov eax, dword [edi + 0x544]
mov dword [esi + 0x1c], eax
mov ecx, dword [edi + 0x548]
lea edx, [esp + 0x8c]
mov dword [esi + 0x20], ecx
push edx
add esi, 0x24
call fcn.0044a5d0
lea eax, [esp + 0x88]
push eax
call fcn.0044a5f0
lea ecx, [esp + 0x94]
push ecx
lea edx, [esp + 0x90]
push edx
lea eax, [esp + 0x2050]
push 0x4d3ad8
push eax
call dword [sym.imp.MSVCR100.dll_sprintf]
mov ecx, dword [esp + 0x3c]
mov edx, dword [ecx + 4]
push edx
lea eax, [esp + 0xb8]
push eax
call fcn.00429b30
lea ecx, [esp + 0xbc]
push ecx
push str.Recibida_contabilidad_de_la_maquina__s.
push 1
call fcn.0042a000
add esp, 0x2c
call fcn.00422ac0
test al, al
je 0x41618e
call fcn.00422ad0
mov edx, dword [esp + 0x28]
mov edi, eax
lea eax, [esp + 0x100]
sub esi, eax
push esi
mov dword [edi], edx
mov dword [edi + 0x14], 1
call sub.MSVCR100.dll_void____cdecl_operator_new___unsigned_int_
push esi
lea ecx, [esp + 0x108]
push ecx
push eax
mov dword [edi + 0x18], eax
call sub.MSVCR100.dll_memcpy
push 0
push edi
lea edx, [esp + 0x2058]
push edx
push 0x16
mov dword [edi + 0x1c], esi
call fcn.00427640
add esp, 0x20
jmp 0x4161a5
lea eax, [esp + 0x9c]
push eax
push 0x4d3b40
push 0
call fcn.0042a000
add esp, 0xc
mov ecx, dword [esp + 0x7040]
pop ebp
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004c6212
add esp, 0x7034
ret