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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x1a8
mov edi, dword [edx + 0x10]
mov esi, dword [edx + 0x14]
mov dword [esp + 0xa4], ecx
mov ecx, dword [edx + 0xc]
call 0x4e2e84
pop eax
mov dword [esp + 0x90], eax
cmp esi, edi
jae 0x4e2ecf
lea eax, [edx + 0xc]
mov dword [esp + 0xc], edx
mov dword [esp + 0x98], eax
mov eax, 0x800013
nop word cs:[eax + eax]
nop dword [eax]
movzx edx, byte [ecx + esi]
lea ebx, [edx - 9]
cmp ebx, 0x17
ja 0x4e2ef1
bt eax, ebx
jae 0x4e2ef1
mov edx, dword [esp + 0xc]
inc esi
cmp edi, esi
mov dword [edx + 0x14], esi
jne 0x4e2eb0
mov esi, edi
inc esi
mov dword [esp + 0x38], 5
cmp edi, esi
cmovb esi, edi
test esi, esi
jne 0x4e48f9
mov edx, 1
xor eax, eax
jmp 0x4e4924
cmp edx, 0x5b
jne 0x4e4989
mov edx, dword [esp + 0xc]
lea eax, [esi + 1]
dec byte [edx + 0x1c]
je 0x4e49aa
xor esi, esi
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 8
mov dword [edx + 0x14], eax
mov dword [esp + 0xb0], 0
mov dword [esp + 4], 8
mov dword [esp + 0x24], 0
mov edx, dword [esp + 0x98]
cmp eax, edi
mov dword [esp + 0x2c], esi
mov ecx, dword [edx]
jae 0x4e493c
mov dword [esp + 8], ecx
mov ecx, esi
mov dword [esp + 0x10], edi
nop
mov edx, dword [esp + 8]
movzx edx, byte [edx + eax]
movzx esi, dl
lea ebx, [esi - 9]
cmp ebx, 0x23
ja 0x4e2fa0
mov esi, dword [ebx*4 + 0x4e4d48]
add esi, dword [esp + 0x90]
jmp esi
cmp esi, 0x5d
je 0x4e4887
test byte [esp + 0x24], 1
jne 0x4e4b0b
mov ecx, dword [esp + 8]
mov esi, eax
cmp dl, 0x5d
jne 0x4e302e
jmp 0x4e4ae9
mov eax, esi
cmp eax, edi
jae 0x4e48c2
lea ebx, [eax + 2]
lea esi, [eax + 1]
nop
movzx edx, byte [ecx + eax]
lea edi, [edx - 9]
cmp edi, 0x17
ja 0x4e3080
mov ecx, 0x800013
bt ecx, edi
mov ecx, dword [esp + 8]
jae 0x4e3080
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
inc eax
inc ebx
inc esi
cmp edi, eax
mov dword [edx + 0x14], eax
jne 0x4e3040
jmp 0x4e48c0
cmp edx, 0x5b
je 0x4e3540
mov esi, dword [esp + 0x2c]
cmp edx, 0x7b
jne 0x4e4b59
mov edx, dword [esp + 0xc]
dec byte [edx + 0x1c]
je 0x4e4c88
inc eax
xor edi, edi
mov dword [esp + 0xb8], 0
cmp eax, dword [esp + 0x10]
mov dword [edx + 0x14], eax
jae 0x4e39cb
xor ebx, ebx
mov dl, 2
mov byte [esp + 0x23], 8
mov dword [esp + 0x34], 2
mov dword [esp + 4], 0x80000001
mov dword [esp + 0x8c], 2
mov dword [esp + 0x14], 0
mov ecx, dword [esp + 0x98]
mov dword [esp + 0x24], ebx
mov byte [esp + 8], dl
mov ebx, dword [ecx]
lea ecx, [eax + 1]
nop
movzx edx, byte [ebx + eax]
movzx esi, dl
lea edi, [esi - 9]
cmp edi, 0x23
ja 0x4e3140
mov esi, dword [edi*4 + 0x4e4dd8]
add esi, dword [esp + 0x90]
jmp esi
cmp esi, 0x7d
je 0x4e3696
test byte [esp + 0x24], 1
jne 0x4e45c5
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
cmp dl, 0x22
jne 0x4e441c
mov edx, dword [esp + 0x98]
inc eax
mov dword [ecx + 0x14], eax
mov eax, ecx
mov dword [ecx + 8], 0
lea ecx, [esp + 0x38]
push eax
call fcn.00488170
add esp, 4
mov edx, dword [esp + 0x3c]
cmp dword [esp + 0x38], 2
je 0x4e3a33
lea ecx, [esp + 0x9c]
push dword [esp + 0x40]
call fcn.0054d500
add esp, 4
cmp byte [esp + 0x9c], 0
jne 0x4e3bdd
movzx eax, byte [esp + 0x9d]
cmp eax, 6
ja 0x4e32b3
mov eax, dword [eax*4 + 0x4e4e68]
mov esi, dword [esp + 0xc]
xor edi, edi
add eax, dword [esp + 0x90]
jmp eax
mov esi, dword [esp + 0xc]
mov ecx, esi
call fcn.00406d60
test eax, eax
mov edi, 0
jne 0x4e3a31
mov ecx, esi
call fcn.004018e0
test eax, eax
je 0x4e34e0
jmp 0x4e3a31
mov eax, dword [esp + 0xc]
movzx edx, byte [esp + 8]
mov ecx, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
mov bl, 1
cmp eax, ecx
mov dword [esp + 0x10], ecx
jb 0x4e30ea
jmp 0x4e4576
mov edx, dword [esp + 0xc]
dec byte [edx + 0x1c]
je 0x4e4ccb
inc eax
mov dword [esp + 0x9c], edx
mov dword [edx + 0x14], eax
mov edx, dword [esp + 0x10]
cmp eax, edx
jae 0x4e35a2
neg edx
mov dword [esp + 8], edx
nop word cs:[eax + eax]
movzx edx, byte [ecx + ebx - 1]
lea edi, [edx - 9]
cmp edi, 0x17
ja 0x4e35c4
mov eax, 0x800013
bt eax, edi
jae 0x4e35c4
mov edx, dword [esp + 8]
mov eax, dword [esp + 0xc]
lea edx, [edx + ebx + 1]
mov dword [eax + 0x14], ebx
inc ebx
cmp edx, 1
jne 0x4e3570
mov edx, dword [esp + 0x10]
mov eax, edx
inc eax
mov dword [esp + 0x38], 2
cmp edx, eax
cmovb eax, edx
test eax, eax
jne 0x4e389a
mov edx, 1
xor eax, eax
jmp 0x4e38c4
cmp edx, 0x5d
je 0x4e3bc7
mov esi, dword [esp + 0xc]
lea ecx, [esp + 0x38]
mov byte [esp + 0xa0], 0
mov edx, esi
call fcn.00547f10
mov eax, dword [esp + 0x38]
test eax, eax
je 0x4e375f
lea edx, [esp + 0x40]
lea ebx, [esp + 0xbc]
mov ecx, dword [edx + 0x14]
movsd xmm0, qword [edx + 0xc]
movsd xmm2, qword [edx - 4]
movsd xmm1, qword [edx + 4]
mov edx, dword [esi + 0x10]
mov dword [ebx + 0x18], ecx
mov ecx, dword [esi + 0xc]
mov esi, dword [esi + 0x14]
movsd qword [ebx + 0x10], xmm0
movsd qword [ebx + 8], xmm1
movsd qword [ebx], xmm2
mov dword [esp + 0xb8], eax
cmp esi, edx
jae 0x4e3674
lea ebx, [esi + 2]
lea eax, [esi + 1]
mov dword [esp + 8], edx
nop dword [eax]
movzx edi, byte [ecx + esi]
lea edx, [edi - 9]
cmp edx, 0x23
ja 0x4e376c
mov edx, dword [edx*4 + 0x4e4e84]
add edx, dword [esp + 0x90]
jmp edx
inc esi
mov dword [esp + 0x38], 2
cmp edx, esi
cmovb esi, edx
test esi, esi
jne 0x4e3be9
mov edx, 1
xor ebx, ebx
jmp 0x4e3c16
cmp dword [esp + 0xb8], 0
je 0x4e3cb9
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x28]
and byte [esp + 8], 1
movsd xmm0, qword [esp + 0xd0]
mov esi, dword [esp + 4]
mov ebx, dword [esp + 0x34]
movsd xmm1, qword [esp + 0xc0]
mov edi, dword [esp + 0x18]
test eax, eax
movsd qword [esp + 0x198], xmm0
movsd xmm0, qword [esp + 0xc8]
movsd qword [esp + 0x188], xmm1
cmove ecx, eax
mov eax, 0
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x8c]
movsd qword [esp + 0x190], xmm0
movsd xmm0, qword [esp + 0xb8]
cmp ecx, 2
cmove ecx, eax
mov dword [esp + 0x8c], ecx
movzx ecx, byte [esp + 0x23]
movsd qword [esp + 0x180], xmm0
cmp cl, 8
movzx edx, cl
mov ecx, 5
cmove edx, ecx
cmp esi, 0x80000001
mov ecx, 0x80000000
cmove esi, ecx
cmp ebx, 2
mov dword [esp + 0x10], edx
mov dword [esp + 4], esi
mov esi, dword [esp + 0x30]
cmove ebx, eax
jmp 0x4e3aab
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], eax
jmp 0x4e3ef7
cmp edi, 0x5d
jne 0x4e3cd6
mov bl, 2
jmp 0x4e383a
lea ecx, [esp + 0x38]
lea edx, [esp + 0x9c]
call fcn.00410200
mov eax, dword [esp + 0x38]
test eax, eax
je 0x4e38da
cmp eax, 1
jne 0x4e386d
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x30], ecx
jmp 0x4e38e2
mov eax, dword [esp + 0x3c]
jmp 0x4e3ee7
cmp edx, esi
cmova esi, edx
inc esi
cmp edx, esi
cmovb esi, edx
xor eax, eax
mov edx, 1
xor edi, edi
nop
inc eax
xor ebx, ebx
cmp byte [ecx], 0xa
lea ecx, [ecx + 1]
sete bl
cmove eax, edi
add edx, ebx
dec esi
jne 0x4e38b0
lea ecx, [esp + 0x38]
push eax
call fcn.004871f0
add esp, 4
mov dword [esp + 4], eax
jmp 0x4e3ef7
mov dword [esp + 0x1c], 0
lea ecx, [esp + 0x38]
lea edx, [esp + 0x9c]
call fcn.0040ed80
mov edx, dword [esp + 0x38]
cmp edx, 3
je 0x4e3d59
cmp edx, 2
je 0x4e44b0
mov ecx, dword [esp + 0x9c]
mov edi, dword [ecx + 0x10]
mov eax, dword [ecx + 0xc]
mov dword [esp + 8], ecx
mov ecx, dword [ecx + 0x14]
cmp ecx, edi
mov dword [esp + 0x10], edi
jae 0x4e44d8
mov esi, dword [esp + 0x3c]
and bl, 1
mov dword [esp + 0x34], edx
mov byte [esp + 0x8c], bl
mov dword [esp + 4], esi
lea esi, [ecx + 1]
nop word cs:[eax + eax]
nop dword [eax + eax]
movzx ebx, byte [eax + ecx]
movzx edi, bl
lea edx, [edi - 9]
cmp edx, 0x23
ja 0x4e3d19
mov edx, dword [edx*4 + 0x4e4f14]
add edx, dword [esp + 0x90]
jmp edx
push eax
jmp 0x4e3a29
mov ecx, dword [esp + 8]
mov dword [esp + 4], 0x80000001
mov dword [esp + 0x14], 0
mov edx, dword [esp + 0x10]
inc eax
mov esi, 0
mov dword [esp + 0x38], 3
cmp edx, eax
cmovb eax, edx
mov edx, 1
test eax, eax
je 0x4e3a24
xor edi, edi
nop word cs:[eax + eax]
nop dword [eax + eax]
inc edi
xor ebx, ebx
cmp byte [ecx], 0xa
lea ecx, [ecx + 1]
sete bl
cmove edi, esi
add edx, ebx
dec eax
jne 0x4e3a10
lea ecx, [esp + 0x38]
push edi
call fcn.004871f0
add esp, 4
mov edx, eax
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 4]
mov edi, dword [esp + 0x14]
cmp eax, 0x80000002
mov dword [esp + 0x24], edx
jl 0x4e3a62
test eax, eax
je 0x4e3a62
push dword [esp + 0xb4]
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
test edi, edi
je 0x4e3a84
test eax, eax
je 0x4e3a84
test ecx, ecx
je 0x4e3a84
push eax
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 0xb8], 0
mov dword [esp + 0x18], esi
je 0x4e3a9e
lea ecx, [esp + 0xb8]
call fcn.0054d850
mov edi, dword [esp + 0x24]
mov ebx, 2
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xc]
inc byte [ecx + 0x1c]
call fcn.00407cf0
mov ecx, eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], edi
movsd xmm1, qword [esp + 0x188]
movsd xmm0, qword [esp + 0x180]
movsd xmm2, qword [esp + 0x190]
mov edx, dword [esp + 0x28]
cmp ebx, 2
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x44], eax
lea eax, [esp + 0x48]
movsd qword [eax + 8], xmm1
movsd xmm1, qword [esp + 0x198]
movsd qword [eax], xmm0
movsd qword [eax + 0x10], xmm2
movsd qword [eax + 0x18], xmm1
mov eax, dword [esp + 4]
mov dword [esp + 0x68], edx
mov dword [esp + 0x6c], esi
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x78], eax
movzx eax, byte [esp + 8]
mov byte [esp + 0x7c], al
mov eax, dword [esp + 0x10]
mov byte [esp + 0x7d], al
mov dword [esp + 0x80], ecx
jne 0x4e3b68
test ecx, ecx
mov ebx, 2
jne 0x4e3fb4
jmp 0x4e40a0
test ecx, ecx
mov dword [esp + 8], ecx
je 0x4e3ba1
lea ecx, [esp + 0x48]
mov edi, edx
call fcn.0054d850
test edi, edi
je 0x4e3baa
mov eax, edi
mov edi, dword [esp + 8]
test esi, esi
je 0x4e3bae
push eax
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
jmp 0x4e3bae
lea eax, [esp + 0x40]
jmp 0x4e402f
mov edi, dword [esp + 8]
mov eax, dword [esp + 4]
mov ebx, 2
cmp eax, 0x80000000
jne 0x4e4007
jmp 0x4e40a0
xor ecx, ecx
mov edx, 0x56f360
push 0x56f234
call fcn.0055a700
jmp 0x4e38ce
mov edx, dword [esp + 0xa0]
jmp 0x4e3a33
xor ebx, ebx
mov edx, 1
xor edi, edi
nop word cs:[eax + eax]
nop dword [eax]
mov eax, ecx
inc ebx
xor ecx, ecx
cmp byte [eax], 0xa
sete cl
cmove ebx, edi
add edx, ecx
lea ecx, [eax + 1]
dec esi
jne 0x4e3c00
lea ecx, [esp + 0x38]
push ebx
jmp 0x4e3edf
mov ecx, 0x581192
mov edx, 0xa
call fcn.0055a6b0
jmp 0x4e3a31
mov edx, dword [esp + 8]
inc esi
mov dword [esp + 0x38], 7
cmp edx, esi
cmovb esi, edx
test esi, esi
je 0x4e3ed3
cmp edx, eax
cmovb eax, edx
xor esi, esi
mov edx, 1
xor edi, edi
nop
inc esi
xor ebx, ebx
cmp byte [ecx], 0xa
lea ecx, [ecx + 1]
sete bl
cmove esi, edi
add edx, ebx
dec eax
jne 0x4e3d00
jmp 0x4e3eda
cmp edi, 0x5d
je 0x4e466e
cmp byte [esp + 0xa0], 0
je 0x4e4584
mov byte [esp + 0xa0], 0
cmp bl, 0x5d
je 0x4e454b
mov edi, dword [esp + 8]
lea ecx, [esp + 0x38]
mov edx, edi
call fcn.00507bd0
mov edx, dword [esp + 0x38]
cmp edx, 2
jne 0x4e3d72
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 4], eax
test ecx, ecx
jne 0x4e472c
jmp 0x4e3eeb
mov esi, dword [edi + 0x10]
mov ecx, dword [edi + 0x14]
mov eax, dword [edi + 0xc]
cmp ecx, esi
jae 0x4e3dcf
mov ebx, dword [esp + 0x3c]
lea edi, [ecx + 1]
mov dword [esp + 0x28], edx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
lea ebx, [ecx + 2]
nop word cs:[eax + eax]
nop
movzx edi, byte [eax + ecx]
lea edx, [edi - 9]
cmp edx, 0x23
ja 0x4e3e09
mov edx, dword [edx*4 + 0x4e4fa4]
add edx, dword [esp + 0x90]
jmp edx
inc ecx
mov dword [esp + 0x38], 2
cmp esi, ecx
cmovb ecx, esi
test ecx, ecx
je 0x4e4565
xor esi, esi
mov edx, 1
xor edi, edi
nop
inc esi
xor ebx, ebx
cmp byte [eax], 0xa
lea eax, [eax + 1]
sete bl
cmove esi, edi
add edx, ebx
dec ecx
jne 0x4e3df0
jmp 0x4e456c
cmp edi, 0x5d
jne 0x4e4678
mov bl, 5
jmp 0x4e425d
mov edx, 1
xor esi, esi
lea ecx, [esp + 0x38]
push esi
call fcn.004871f0
add esp, 4
mov dword [esp + 4], eax
lea ecx, [esp + 0xb8]
call fcn.0054d850
mov ecx, dword [esp + 0xc]
mov esi, 2
inc byte [ecx + 0x1c]
call fcn.00408250
mov ecx, eax
mov edx, dword [esp + 4]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x38], esi
movsd xmm1, qword [esp + 0x168]
movsd xmm0, qword [esp + 0x160]
movsd xmm2, qword [esp + 0x170]
cmp esi, 2
mov dword [esp + 0x34], esi
mov dword [esp + 0x3c], edx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x44], eax
lea eax, [esp + 0x48]
movsd qword [eax + 8], xmm1
movsd xmm1, qword [esp + 0x178]
movsd qword [eax], xmm0
movsd qword [eax + 0x10], xmm2
movsd qword [eax + 0x18], xmm1
mov eax, dword [esp + 8]
mov dword [esp + 0x68], edi
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x74], eax
movzx eax, byte [esp + 0x8c]
mov ah, byte [esp + 0x23]
mov byte [esp + 0x7c], al
mov byte [esp + 0x7d], ah
mov dword [esp + 0x80], ecx
jne 0x4e3fbe
test ecx, ecx
mov ebx, 2
mov edi, edx
je 0x4e40a0
call fcn.0040a690
jmp 0x4e40a0
test ecx, ecx
je 0x4e4025
mov esi, ecx
lea ecx, [esp + 0x48]
call fcn.0054d850
test edi, edi
je 0x4e4211
mov eax, edi
test ebx, ebx
mov edi, esi
je 0x4e3ff3
push eax
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x70]
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
mov ebx, 2
cmp eax, 0x80000000
je 0x4e40a0
test eax, eax
je 0x4e40a0
push dword [esp + 0x74]
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
jmp 0x4e40a0
lea eax, [esp + 0x40]
mov ebx, dword [esp + 0x34]
mov edi, edx
movsd xmm1, qword [eax + 0x30]
movsd xmm2, qword [eax + 0x28]
movsd xmm0, qword [eax + 0x38]
movsd qword [esp + 0x110], xmm1
movsd xmm1, qword [eax + 0x20]
movsd qword [esp + 0x108], xmm2
movsd xmm2, qword [eax + 0x18]
movsd qword [esp + 0x118], xmm0
movsd qword [esp + 0x100], xmm1
movsd xmm1, qword [eax + 0x10]
movsd qword [esp + 0xf8], xmm2
movsd xmm2, qword [eax]
movsd qword [esp + 0xf0], xmm1
movsd xmm1, qword [eax + 8]
movsd qword [esp + 0xe0], xmm2
movsd qword [esp + 0xe8], xmm1
nop
cmp ebx, 2
je 0x4e4ade
movsd xmm1, qword [esp + 0x110]
movsd xmm2, qword [esp + 0x108]
movsd xmm0, qword [esp + 0x118]
cmp ebx, 3
movsd qword [esp + 0x150], xmm1
movsd xmm1, qword [esp + 0x100]
movsd qword [esp + 0x148], xmm2
movsd xmm2, qword [esp + 0xf8]
movsd qword [esp + 0x158], xmm0
movsd qword [esp + 0x140], xmm1
movsd xmm1, qword [esp + 0xf0]
movsd qword [esp + 0x138], xmm2
movsd xmm2, qword [esp + 0xe0]
movsd qword [esp + 0x130], xmm1
movsd xmm1, qword [esp + 0xe8]
movsd qword [esp + 0x120], xmm2
movsd qword [esp + 0x128], xmm1
je 0x4e49e9
mov esi, dword [esp + 0xb0]
cmp esi, dword [esp + 0xa8]
jne 0x4e4167
lea ecx, [esp + 0xa8]
mov edx, esi
call fcn.004b7960
mov esi, dword [esp + 0xb0]
mov ecx, dword [esp + 0xac]
lea eax, [esi + esi*8]
mov edx, dword [esp + 0xc]
inc esi
mov dword [ecx + eax*8], ebx
mov dword [ecx + eax*8 + 4], edi
mov dword [esp + 4], ecx
movsd xmm0, qword [esp + 0x120]
movsd xmm1, qword [esp + 0x128]
movsd qword [ecx + eax*8 + 8], xmm0
movsd qword [ecx + eax*8 + 0x10], xmm1
movsd xmm0, qword [esp + 0x130]
movsd qword [ecx + eax*8 + 0x18], xmm0
movsd xmm0, qword [esp + 0x138]
movsd qword [ecx + eax*8 + 0x20], xmm0
movsd xmm0, qword [esp + 0x140]
movsd qword [ecx + eax*8 + 0x28], xmm0
movsd xmm0, qword [esp + 0x148]
movsd qword [ecx + eax*8 + 0x30], xmm0
movsd xmm0, qword [esp + 0x150]
movsd qword [ecx + eax*8 + 0x38], xmm0
movsd xmm0, qword [esp + 0x158]
movsd qword [ecx + eax*8 + 0x40], xmm0
mov cl, 1
mov dword [esp + 0xb0], esi
mov edi, dword [edx + 0x10]
mov eax, dword [edx + 0x14]
mov dword [esp + 0x24], ecx
jmp 0x4e2f40
mov edi, esi
mov eax, dword [esp + 8]
mov ebx, 2
cmp eax, 0x80000000
je 0x4e40a0
jmp 0x4e4007
cmp ecx, esi
jae 0x4e42b7
mov dword [esp + 0x10], eax
lea eax, [ecx + 1]
mov byte [esp + 0x23], bl
lea ebx, [ecx + 2]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 8]
nop word [eax + eax]
mov edx, dword [esp + 0x10]
movzx edi, byte [edx + ecx]
lea edx, [edi - 9]
cmp edx, 0x23
ja 0x4e46b4
mov edx, dword [edx*4 + 0x4e5034]
add edx, dword [esp + 0x90]
jmp edx
inc ecx
mov dword [esp + 0x38], 2
cmp esi, ecx
cmovb ecx, esi
test ecx, ecx
je 0x4e4565
xor esi, esi
mov edx, 1
xor edi, edi
nop word cs:[eax + eax]
inc esi
xor ebx, ebx
cmp byte [eax], 0xa
lea eax, [eax + 1]
sete bl
cmove esi, edi
add edx, ebx
dec ecx
jne 0x4e42e0
jmp 0x4e456c
movzx ecx, dl
cmp ecx, 0x7d
jne 0x4e461d
inc eax
mov dword [esp + 0x38], 0x12
cmp edi, eax
cmovb eax, edi
test eax, eax
je 0x4e462f
mov edi, ebx
xor esi, esi
mov edx, 1
xor ebx, ebx
nop dword [eax]
inc esi
xor ecx, ecx
cmp byte [edi], 0xa
lea edi, [edi + 1]
sete cl
cmove esi, ebx
add edx, ecx
dec eax
jne 0x4e4450
jmp 0x4e4664
mov ecx, 3
mov edx, 0x56f360
push 0x56f234
call fcn.0055a700
jmp 0x4e4719
mov edx, dword [esp + 0x10]
inc ecx
mov dword [esp + 0x38], 2
cmp edx, ecx
cmovb ecx, edx
test ecx, ecx
je 0x4e4565
xor esi, esi
mov edx, 1
xor edi, edi
nop word [eax + eax]
inc esi
xor ebx, ebx
cmp byte [eax], 0xa
lea eax, [eax + 1]
sete bl
cmove esi, edi
add edx, ebx
dec ecx
jne 0x4e4500
jmp 0x4e456c
mov edx, dword [esp + 0x10]
inc ecx
mov dword [esp + 0x38], 0x12
cmp edx, ecx
cmovb ecx, edx
test ecx, ecx
jne 0x4e45eb
mov edx, 1
xor esi, esi
lea ecx, [esp + 0x38]
push esi
jmp 0x4e4714
mov ecx, dword [esp + 0x98]
mov ecx, dword [ecx]
jmp 0x4e39df
mov edx, dword [esp + 0x10]
inc ecx
mov dword [esp + 0x38], 7
cmp edx, ecx
cmovb ecx, edx
test ecx, ecx
je 0x4e4708
cmp edx, esi
cmovb esi, edx
xor ebx, ebx
mov edx, 1
xor edi, edi
inc ebx
xor ecx, ecx
cmp byte [eax], 0xa
lea eax, [eax + 1]
sete cl
cmove ebx, edi
add edx, ecx
dec esi
jne 0x4e45ac
jmp 0x4e470f
mov edx, dword [esp + 0x10]
inc eax
mov dword [esp + 0x38], 8
cmp edx, eax
cmovb eax, edx
test eax, eax
jne 0x4e46c3
mov esi, 1
xor eax, eax
jmp 0x4e46e7
xor esi, esi
mov edx, 1
xor edi, edi
nop word cs:[eax + eax]
nop
inc esi
xor ebx, ebx
cmp byte [eax], 0xa
lea eax, [eax + 1]
sete bl
cmove esi, edi
add edx, ebx
dec ecx
jne 0x4e4600
jmp 0x4e456c
inc eax
mov dword [esp + 0x38], 0x10
cmp edi, eax
cmovb eax, edi
test eax, eax
jne 0x4e4638
mov edx, 1
xor esi, esi
jmp 0x4e4664
mov edi, ebx
xor esi, esi
mov edx, 1
xor ebx, ebx
nop word cs:[eax + eax]
nop dword [eax]
inc esi
xor ecx, ecx
cmp byte [edi], 0xa
lea edi, [edi + 1]
sete cl
cmove esi, ebx
add edx, ecx
dec eax
jne 0x4e4650
lea ecx, [esp + 0x38]
push esi
jmp 0x4e3a29
mov ecx, 4
jmp 0x4e44b5
inc ecx
mov dword [esp + 0x38], 7
cmp esi, ecx
cmovb ecx, esi
test ecx, ecx
je 0x4e4708
mov ecx, dword [esp + 0x10]
mov edx, 1
cmp esi, ecx
cmovb ecx, esi
xor ebx, ebx
xor edi, edi
mov esi, ecx
inc ebx
xor ecx, ecx
cmp byte [eax], 0xa
lea eax, [eax + 1]
sete cl
cmove ebx, edi
add edx, ecx
dec esi
jne 0x4e469e
jmp 0x4e470f
cmp edi, 0x5d
jne 0x4e46f2
mov ecx, 6
jmp 0x4e44b5
cmp edx, ecx
mov esi, 1
mov edi, ebx
cmovb ecx, edx
xor eax, eax
xor ebx, ebx
inc eax
xor edx, edx
cmp byte [edi], 0xa
lea edi, [edi + 1]
sete dl
cmove eax, ebx
add esi, edx
dec ecx
jne 0x4e46d3
lea ecx, [esp + 0x38]
mov edx, esi
jmp 0x4e39c8
inc ecx
mov dword [esp + 0x38], 7
cmp esi, ecx
cmovb ecx, esi
test ecx, ecx
jne 0x4e47c8
mov edx, 1
xor ebx, ebx
lea ecx, [esp + 0x38]
push ebx
call fcn.004871f0
add esp, 4
mov ecx, dword [esp + 0x1c]
mov dword [esp + 4], eax
test ecx, ecx
je 0x4e3eeb
cmp dword [esp + 0x30], 0
je 0x4e3eeb
push ecx
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
jmp 0x4e3eeb
mov eax, dword [esp + 0x24]
mov edx, 1
cmp esi, eax
cmovb eax, esi
mov esi, dword [esp + 0x10]
xor ebx, ebx
xor edi, edi
inc ebx
xor ecx, ecx
cmp byte [esi], 0xa
lea esi, [esi + 1]
sete cl
cmove ebx, edi
add edx, ecx
dec eax
jne 0x4e47de
jmp 0x4e470f
mov esi, ecx
mov ebx, dword [esp + 0xa8]
mov ecx, dword [esp + 0xc]
inc byte [ecx + 0x1c]
call fcn.00408250
cmp ebx, 0x80000000
jne 0x4e4bce
test eax, eax
je 0x4e48b3
mov ecx, eax
call fcn.0040a690
mov ecx, dword [esp + 4]
mov esi, dword [esp + 0xc]
jmp 0x4e4c0c
mov eax, edi
inc eax
mov dword [esp + 0x38], 5
cmp edi, eax
cmovb eax, edi
test eax, eax
je 0x4e494e
xor edi, edi
mov edx, 1
xor esi, esi
nop dword [eax]
inc esi
xor ebx, ebx
cmp byte [ecx], 0xa
lea ecx, [ecx + 1]
sete bl
cmove esi, edi
add edx, ebx
dec eax
jne 0x4e48e0
jmp 0x4e4a24
xor edi, edi
mov edx, 1
xor eax, eax
nop word cs:[eax + eax]
nop dword [eax]
inc eax
xor ebx, ebx
cmp byte [ecx], 0xa
lea ecx, [ecx + 1]
sete bl
cmove eax, edi
add edx, ebx
dec esi
jne 0x4e4910
lea ecx, [esp + 0x38]
push eax
call fcn.004871f0
add esp, 4
jmp 0x4e4c13
inc eax
mov dword [esp + 0x38], 2
cmp edi, eax
cmovb eax, edi
test eax, eax
jne 0x4e495a
mov edx, 1
xor esi, esi
jmp 0x4e4a24
xor edi, edi
mov edx, 1
xor esi, esi
nop word cs:[eax + eax]
nop dword [eax]
inc esi
xor ebx, ebx
cmp byte [ecx], 0xa
lea ecx, [ecx + 1]
sete bl
cmove esi, edi
add edx, ebx
dec eax
jne 0x4e4970
jmp 0x4e4a24
mov esi, dword [esp + 0xc]
lea edx, [esp + 0x97]
mov ecx, esi
push 0x56f72c
call fcn.00405c80
add esp, 4
mov ecx, eax
jmp 0x4e4c0c
inc esi
mov dword [esp + 0x38], 0x15
cmp edi, esi
cmovb esi, edi
test esi, esi
jne 0x4e4aac
mov edx, 1
xor esi, esi
jmp 0x4e4ad4
xor esi, esi
mov edx, 1
jmp 0x4e4a24
mov eax, edi
jmp 0x4e4a31
lea ecx, [esp + 0x38]
push esi
call fcn.004871f0
add esp, 4
mov edi, dword [esp + 0x2c]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0xb0]
test ebx, ebx
je 0x4e4b91
mov esi, dword [esp + 0xac]
add esi, 0x3c
jmp 0x4e4a6a
add esi, 0x48
dec ebx
je 0x4e4b91
lea ecx, [esi - 0x2c]
call fcn.0054d850
mov eax, dword [esi - 0xc]
test eax, eax
je 0x4e4a8d
cmp dword [esi - 8], 0
je 0x4e4a8d
push eax
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esi - 4]
cmp eax, 0x80000000
je 0x4e4a60
test eax, eax
je 0x4e4a60
push dword [esi]
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
jmp 0x4e4a60
cmp edi, eax
mov edx, 1
cmovb eax, edi
xor edi, edi
xor esi, esi
nop word [eax + eax]
inc esi
xor ebx, ebx
cmp byte [ecx], 0xa
lea ecx, [ecx + 1]
sete bl
cmove esi, edi
add edx, ebx
dec eax
jne 0x4e4ac0
lea ecx, [esp + 0x38]
push esi
jmp 0x4e4929
mov esi, dword [esp + 0x2c]
mov ecx, edi
jmp 0x4e4b73
inc esi
mov dword [esp + 0x38], 0x12
cmp edi, esi
cmovb esi, edi
test esi, esi
jne 0x4e4d0e
mov edx, 1
xor eax, eax
jmp 0x4e4d34
inc eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x38], 7
cmp edi, eax
mov edx, eax
cmovb edx, edi
test edx, edx
je 0x4e49e0
cmp edi, eax
mov edx, 1
cmovb eax, edi
xor edi, edi
xor esi, esi
nop word cs:[eax + eax]
nop
inc esi
xor ebx, ebx
cmp byte [ecx], 0xa
lea ecx, [ecx + 1]
sete bl
cmove esi, edi
add edx, ebx
dec eax
jne 0x4e4b40
jmp 0x4e4a24
mov ecx, dword [esp + 0xc]
lea edx, [esp + 0x97]
push 0x56f99c
call fcn.00405c80
add esp, 4
mov ecx, eax
mov edx, dword [esp + 0xc]
mov edi, esi
call fcn.00559710
mov dword [esp + 4], eax
mov ebx, dword [esp + 0xb0]
test ebx, ebx
jne 0x4e4a48
cmp dword [esp + 0xa8], 0
je 0x4e4baf
push dword [esp + 0xac]
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov ecx, dword [esp + 0xc]
mov ebx, 0x80000000
mov esi, edi
inc byte [ecx + 0x1c]
call fcn.00408250
cmp ebx, 0x80000000
je 0x4e48a8
test eax, eax
jne 0x4e4be7
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 4]
mov dword [eax], ebx
mov dword [eax + 4], ecx
mov dword [eax + 8], esi
jmp 0x4e4c23
test esi, esi
mov dword [esp + 8], eax
jne 0x4e4c2b
test ebx, ebx
je 0x4e4c04
push dword [esp + 4]
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov esi, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, esi
call fcn.00559710
mov ecx, dword [esp + 0xa4]
mov dword [ecx + 4], eax
mov dword [ecx], 0x80000000
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 4]
mov edi, esi
lea esi, [eax + 0x3c]
jmp 0x4e4c46
add esi, 0x48
dec edi
je 0x4e4bef
lea ecx, [esi - 0x2c]
call fcn.0054d850
mov eax, dword [esi - 0xc]
test eax, eax
je 0x4e4c69
cmp dword [esi - 8], 0
je 0x4e4c69
push eax
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esi - 4]
cmp eax, 0x80000000
je 0x4e4c40
test eax, eax
je 0x4e4c40
push dword [esi]
push 0
push dword [0x5920d8]
call sub.KERNEL32.dll_HeapFree
jmp 0x4e4c40
mov esi, dword [esp + 0x10]
inc eax
mov dword [esp + 0x38], 0x15
mov edx, eax
cmp esi, eax
cmovb edx, esi
test edx, edx
je 0x4e49e0
cmp esi, eax
mov edx, 1
cmovb eax, esi
xor edi, edi
xor esi, esi
inc esi
xor ebx, ebx
cmp byte [ecx], 0xa
lea ecx, [ecx + 1]
sete bl
cmove esi, edi
add edx, ebx
dec eax
jne 0x4e4cb2
jmp 0x4e4a24
mov esi, dword [esp + 0x10]
inc eax
mov dword [esp + 0x38], 0x15
mov edx, eax
cmp esi, eax
cmovb edx, esi
test edx, edx
je 0x4e49e0
cmp esi, eax
mov edx, 1
cmovb eax, esi
xor edi, edi
xor esi, esi
inc esi
xor ebx, ebx
cmp byte [ecx], 0xa
lea ecx, [ecx + 1]
sete bl
cmove esi, edi
add edx, ebx
dec eax
jne 0x4e4cf5
jmp 0x4e4a24
xor edi, edi
mov edx, 1
xor eax, eax
nop word [eax + eax]
inc eax
xor ebx, ebx
cmp byte [ecx], 0xa
lea ecx, [ecx + 1]
sete bl
cmove eax, edi
add edx, ebx
dec esi
jne 0x4e4d20
lea ecx, [esp + 0x38]
push eax
jmp 0x4e4a29