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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x12c
cmp ecx, 0x6e6d6864
mov dword [esp + 0x44], eax
mov edi, dword [esp + 0x140]
mov eax, ecx
mov dword [esp + 0x40], edx
mov ebp, dword [esp + 0x144]
mov dword [esp + 0x114], ecx
mov ebx, dword [esp + 0x148]
mov esi, dword [esp + 0x14c]
je 0x50d205
jbe 0x50b975
cmp ecx, 0x73747373
je 0x50d283
jbe 0x50ba15
cmp ecx, 0x746b6864
je 0x50ce78
mov esi, esi
lea edi, [edi]
ja 0x50be67
cmp ecx, 0x7374737a
lea esi, [esi]
je 0x50c0c5
cmp ecx, 0x73747473
lea esi, [esi]
jne 0x50be1b
mov edx, dword [esp + 0x44]
mov eax, dword [edx + 0x20]
call fcn.00504010
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx + 0x20]
call fcn.00504010
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb18864
mov dword [esp + 4], 6
mov dword [esp], 7
mov ebp, eax
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0xc], eax
call fcn.00405fb0
mov dword [esp + 4], 8
mov dword [esp], ebp
call sub.msvcrt.dll_calloc
mov edx, dword [esp + 0x150]
test ebp, ebp
mov dword [esp + 0x60], 0
mov dword [edx + 0x6c], ebp
mov dword [edx + 0x70], eax
jle 0x50b932
mov ecx, dword [esp + 0x150]
xor edi, edi
mov edx, dword [esp + 0x44]
lea ebx, [edi*8]
add edi, 1
mov esi, ebx
add esi, dword [ecx + 0x70]
mov eax, dword [edx + 0x20]
call fcn.00504010
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x150]
mov dword [esi], eax
mov eax, dword [edx + 0x20]
mov esi, ebx
add esi, dword [ecx + 0x70]
call fcn.00504010
mov ecx, dword [esp + 0x150]
add ebx, dword [ecx + 0x70]
mov dword [esi + 4], eax
mov eax, dword [ebx + 4]
imul eax, dword [ebx]
add dword [esp + 0x60], eax
cmp ebp, edi
jne 0x50b8e2
mov edx, dword [esp + 0x150]
mov eax, dword [edx + 0x1c]
cmp eax, dword [esp + 0x60]
je 0x50bdf6
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x10], eax
mov dword [esp + 8], 0xb18890
mov dword [esp + 4], 2
mov dword [esp + 0xc], ecx
mov dword [esp], 7
call fcn.00405fb0
xor eax, eax
jmp 0x50bdf8
cmp ecx, 0x676d6864
je 0x50d242
jbe 0x50bdd1
cmp ecx, 0x6d646864
lea esi, [esi]
je 0x50cb35
jbe 0x50be03
cmp ecx, 0x6d646961
je 0x50ccfd
cmp ecx, 0x6d696e66
nop
jne 0x50be1b
mov edx, dword [esp + 0x40]
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb189f6
mov dword [esp + 0xc], edx
mov dword [esp + 4], 6
mov dword [esp], 7
call fcn.00405fb0
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x150]
add edx, 1
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x44]
add ebx, edi
adc esi, ebp
mov dword [esp], ebx
mov dword [esp + 4], esi
call fcn.00506d70
add esp, 0x12c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
cmp ecx, 0x7374636f
je 0x50d14c
jbe 0x50bebb
cmp ecx, 0x73747363
lea esi, [esi]
je 0x50cd40
cmp ecx, 0x73747364
lea esi, [esi]
jne 0x50be1b
mov ecx, dword [esp + 0x44]
mov ebx, dword [ecx + 0x20]
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d68f
add eax, 1
mov dword [ebx + 0x24], eax
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d675
add eax, 1
mov dword [ebx + 0x24], eax
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d6a8
add eax, 1
mov dword [ebx + 0x24], eax
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d65c
add eax, 1
mov dword [ebx + 0x24], eax
mov eax, dword [esp + 0x44]
mov ebx, dword [eax + 0x20]
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d63f
movzx esi, byte [ebx + eax + 0x64]
lea ecx, [eax + 1]
mov dword [ebx + 0x24], ecx
shl esi, 8
cmp ecx, dword [ebx + 0x28]
jae 0x50d622
movzx eax, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
mov ebp, eax
cmp ecx, dword [ebx + 0x28]
jae 0x50d605
movzx eax, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
mov edi, eax
cmp ecx, dword [ebx + 0x28]
jae 0x50d5d9
movzx eax, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
mov edx, eax
or ebp, esi
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x54], ebp
shl dword [esp + 0x54], 8
or dword [esp + 0x54], edi
shl dword [esp + 0x54], 8
or dword [esp + 0x54], edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 0xc], ecx
mov dword [esp + 8], 0xb187ec
mov dword [esp + 0x14], edx
mov dword [esp + 4], 6
mov dword [esp], 7
call fcn.00405fb0
mov eax, dword [esp + 0x54]
test eax, eax
jle 0x50bdf6
mov dword [esp + 0x50], 0
mov eax, dword [esp + 0x44]
mov ebx, dword [eax + 0x20]
mov ecx, dword [ebx + 0x34]
mov eax, dword [ebx + 0x28]
mov edx, dword [ebx + 0x30]
mov dword [esp + 0x7c], ecx
mov ecx, dword [ebx + 0x24]
mov dword [esp + 0x70], eax
mov dword [esp + 0x78], edx
cmp ecx, eax
mov dword [esp + 0x74], ecx
jae 0x50c050
movzx esi, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
shl esi, 8
cmp ecx, dword [ebx + 0x28]
jae 0x50c01e
movzx eax, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
mov edi, eax
cmp ecx, dword [ebx + 0x28]
jae 0x50c037
movzx eax, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
mov ebp, eax
cmp ecx, dword [ebx + 0x28]
jae 0x50bfd3
movzx eax, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
mov edx, eax
or edi, esi
shl edi, 8
or edi, ebp
shl edi, 8
or edi, edx
mov edx, dword [esp + 0x44]
mov dword [esp + 0x58], edi
mov dword [esp + 0x5c], 0
mov ebx, dword [edx + 0x20]
mov edx, dword [ebx + 0x24]
cmp edx, dword [ebx + 0x28]
jae 0x50bffb
movzx eax, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
mov dword [esp + 0x8c], eax
cmp edx, dword [ebx + 0x28]
jae 0x50bfb6
movzx ebp, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
shl ebp, 8
cmp edx, dword [ebx + 0x28]
jae 0x50bf99
movzx esi, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
shl esi, 0x10
cmp edx, dword [ebx + 0x28]
jae 0x50bf71
movzx ecx, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
shl ecx, 0x18
mov eax, dword [esp + 0x8c]
or eax, ebp
or eax, esi
or eax, ecx
cmp eax, 0x32317679
mov dword [esp + 0x11c], eax
je 0x50c069
cmp dword [esp + 0x5c], 0
jl 0x50bdf6
jle 0x50c085
mov eax, dword [esp + 0x58]
lea ecx, [esp + 0x11c]
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], 0xb178e8
add eax, 0xfffffff0
adc edx, 0xffffffff
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 8], 0xb18810
mov dword [esp + 4], 6
mov dword [esp + 0x14], eax
mov dword [esp + 0xc], edx
mov dword [esp], 7
call fcn.00405fb0
mov ecx, dword [esp + 0x150]
mov eax, dword [ecx + 0x30]
cmp eax, dword [esp + 0x11c]
je 0x50bd11
mov eax, dword [esp + 0x50]
test eax, eax
je 0x50bd11
mov dword [esp + 8], 0xb18838
mov dword [esp + 4], 2
mov dword [esp], 7
call fcn.00405fb0
mov eax, dword [esp + 0x11c]
mov edx, dword [esp + 0x150]
mov dword [edx + 0x30], eax
lea eax, [edi - 8]
mov dword [edx + 0x44], eax
mov dword [esp], eax
call sub.msvcrt.dll_malloc
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x44]
mov edi, dword [ecx + 0x44]
mov esi, dword [edx + 0x20]
mov dword [ecx + 0x48], eax
test edi, edi
jle 0x50bef7
lea ecx, [esi + 0x64]
mov ebp, eax
mov dword [esp + 0x34], ecx
jmp 0x50bd89
cmp eax, edx
mov ebx, ecx
ja 0x50bdb3
cmp ebx, edi
jle 0x50bd63
mov ebx, edi
mov eax, dword [esp + 0x34]
sub edi, ebx
add eax, dword [esi + 0x24]
mov dword [esp + 8], ebx
mov dword [esp], ebp
mov dword [esp + 4], eax
call sub.msvcrt.dll_memcpy
add dword [esi + 0x24], ebx
test edi, edi
jle 0x50bef0
add ebp, ebx
mov edx, dword [esi + 0x28]
mov eax, dword [esi + 0x24]
mov ecx, edx
sub ecx, eax
jne 0x50bd57
mov dword [esp], esi
call fcn.005280b0
test eax, eax
je 0x50c079
mov edx, dword [esi + 0x28]
mov eax, dword [esi + 0x24]
mov ebx, edx
sub ebx, eax
cmp eax, edx
jbe 0x50bd5d
mov dword [esp + 8], 0xb173d8
mov dword [esp + 4], 2
mov dword [esp], 7
call fcn.00405fb0
jmp 0x50bd5d
cmp ecx, 0x65647473
je 0x50c1a8
lea esi, [esi]
jbe 0x50be51
cmp ecx, 0x656c7374
je 0x50d008
cmp ecx, 0x66726565
jne 0x50be1b
xor eax, eax
add esp, 0x12c
pop ebx
pop esi
pop edi
pop ebp
ret
cmp ecx, 0x68646c72
je 0x50c773
cmp ecx, 0x6d646174
je 0x50c74d
bswap eax
mov dword [esp + 0x114], eax
lea eax, [esp + 0x114]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
mov dword [esp + 8], 0xb17840
mov dword [esp + 4], 6
mov dword [esp], 7
call fcn.00405fb0
jmp 0x50bdf6
cmp ecx, 0x636f3634
je 0x50c1c5
cmp ecx, 0x636f6465
jne 0x50be1b
jmp 0x50bdf6
cmp ecx, 0x75647461
lea esi, [esi]
je 0x50bdf6
cmp ecx, 0x766d6864
jne 0x50be1b
mov eax, dword [esp + 0x40]
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb187a5
mov dword [esp + 4], 6
mov dword [esp + 0xc], eax
mov dword [esp], 7
call fcn.00405fb0
mov edx, dword [esp + 0x150]
xor eax, eax
mov dword [edx + 4], 1
jmp 0x50bdf8
cmp ecx, 0x736d6864
je 0x50ce37
cmp ecx, 0x7374626c
jne 0x50be1b
mov eax, dword [esp + 0x40]
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb18a0b
mov dword [esp + 0xc], eax
jmp 0x50b9ce
mov edx, dword [esp + 0x44]
mov esi, dword [edx + 0x20]
mov ecx, dword [esp + 0x74]
xor ebx, ebx
mov eax, dword [esp + 0x70]
add ecx, dword [esp + 0x78]
adc ebx, dword [esp + 0x7c]
xor edx, edx
mov ebp, dword [esi + 0x34]
sub ecx, eax
mov edi, dword [esi + 0x30]
sbb ebx, edx
add ecx, dword [esp + 0x58]
adc ebx, dword [esp + 0x5c]
cmp ebx, ebp
jle 0x50bf51
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp], esi
call fcn.005284e0
test eax, eax
je 0x50bdf6
add dword [esp + 0x50], 1
mov ecx, dword [esp + 0x50]
cmp dword [esp + 0x54], ecx
jne 0x50bb58
jmp 0x50bdf6
jl 0x50bf57
cmp ecx, edi
jae 0x50bf21
mov eax, dword [esi + 0x28]
xor edx, edx
sub edi, eax
mov eax, ecx
sbb ebp, edx
sub eax, edi
mov edx, ebx
sbb edx, ebp
test edx, edx
js 0x50bf21
mov dword [esi + 0x24], eax
jmp 0x50bf39
mov dword [esp], ebx
call fcn.005280b0
xor ecx, ecx
test eax, eax
je 0x50bc55
mov eax, dword [ebx + 0x24]
movzx ecx, byte [eax + ebx + 0x64]
add eax, 1
mov dword [ebx + 0x24], eax
shl ecx, 0x18
jmp 0x50bc55
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50c0bd
mov edx, dword [ebx + 0x24]
mov esi, 0xff000000
jmp 0x50bc3e
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50c09d
mov edx, dword [ebx + 0x24]
mov ebp, 0xffff0000
jmp 0x50bc27
mov dword [esp], ebx
call fcn.005280b0
mov edx, 0xffffff00
test eax, eax
je 0x50bbd3
mov eax, dword [ebx + 0x24]
movzx edx, byte [eax + ebx + 0x64]
add eax, 1
mov dword [ebx + 0x24], eax
jmp 0x50bbd3
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50c0ad
mov edx, dword [ebx + 0x24]
mov dword [esp + 0x8c], 0xffffff00
jmp 0x50bc10
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50c0a5
mov ecx, dword [ebx + 0x24]
mov edi, 0xffffff00
jmp 0x50bba7
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50c0b5
mov ecx, dword [ebx + 0x24]
mov ebp, 0xffffff00
jmp 0x50bbbd
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50c095
mov ecx, dword [ebx + 0x24]
mov esi, 0xffff0000
jmp 0x50bb91
mov dword [esp + 0x11c], 0x30323449
jmp 0x50bc74
mov eax, dword [esp + 0x44]
mov esi, dword [eax + 0x20]
jmp 0x50bef7
cmp dword [esp + 0x58], 7
ja 0x50bc85
jmp 0x50bdf6
mov ecx, dword [ebx + 0x24]
jmp 0x50bb83
mov edx, dword [ebx + 0x24]
jmp 0x50bc19
mov ecx, dword [ebx + 0x24]
jmp 0x50bb9a
mov edx, dword [ebx + 0x24]
jmp 0x50bbfe
mov ecx, dword [ebx + 0x24]
jmp 0x50bbb0
mov edx, dword [ebx + 0x24]
jmp 0x50bc30
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx + 0x20]
call fcn.00504010
mov edx, dword [esp + 0x44]
mov ebx, eax
mov eax, dword [edx + 0x20]
call fcn.00504010
mov ecx, dword [esp + 0x44]
mov esi, eax
mov eax, dword [ecx + 0x20]
call fcn.00504010
mov edx, ebx
shl edx, 8
mov dword [esp + 0x18], esi
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb188f4
mov dword [esp + 4], 6
mov edi, eax
mov eax, ebx
shl eax, 0x10
or eax, edx
or eax, ebx
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x40]
shl ebx, 0x18
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x14], edi
mov dword [esp], 7
mov dword [esp + 0xc], eax
call fcn.00405fb0
mov edx, dword [esp + 0x150]
test esi, esi
mov dword [edx + 0x20], esi
jne 0x50bdf6
cmp edi, 0xfffffff
mov edx, dword [edx + 0x58]
jbe 0x50d344
mov dword [esp], edx
call sub.msvcrt.dll_free
xor eax, eax
mov edx, dword [esp + 0x150]
test edi, edi
mov dword [edx + 0x58], eax
mov dword [edx + 0x54], edi
jle 0x50bdf6
xor esi, esi
mov edx, dword [esp + 0x44]
mov ebx, esi
add esi, 1
mov ecx, dword [esp + 0x150]
shl ebx, 4
mov eax, dword [edx + 0x20]
add ebx, dword [ecx + 0x58]
call fcn.00504010
cmp edi, esi
mov dword [ebx + 4], eax
jne 0x50c17e
jmp 0x50bdf6
mov eax, dword [esp + 0x40]
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb18a21
mov dword [esp + 0xc], eax
jmp 0x50b9ce
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx + 0x20]
call fcn.00504010
mov edx, dword [esp + 0x44]
mov eax, dword [edx + 0x20]
call fcn.00504010
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb18964
mov dword [esp + 4], 6
mov dword [esp + 0xc], ecx
mov dword [esp], 7
mov dword [esp + 0x64], eax
mov dword [esp + 0x14], eax
call fcn.00405fb0
mov eax, dword [esp + 0x150]
mov edx, dword [esp + 0x64]
cmp edx, dword [eax + 0x5c]
jle 0x50c24d
cmp dword [esp + 0x64], 0xaaaaaaa
mov edx, dword [eax + 0x60]
jbe 0x50da2f
mov dword [esp], edx
call sub.msvcrt.dll_free
xor eax, eax
mov edx, dword [esp + 0x150]
mov ecx, dword [esp + 0x64]
mov dword [edx + 0x60], eax
mov dword [edx + 0x5c], ecx
mov eax, dword [esp + 0x64]
xor ebp, ebp
mov dword [esp + 0x68], 0
test eax, eax
jg 0x50c491
jmp 0x50bdf6
movzx eax, byte [edi + edx + 0x64]
lea esi, [edx + 1]
mov dword [edi + 0x24], esi
mov ecx, eax
sar ecx, 0x1f
mov dword [esp + 0xd0], eax
mov dword [esp + 0xd4], ecx
mov eax, dword [esp + 0xd0]
mov edx, dword [esp + 0xd4]
shld edx, eax, 8
shl eax, 8
mov dword [esp + 0xd0], eax
mov dword [esp + 0xd4], edx
cmp esi, dword [edi + 0x28]
jae 0x50c615
movzx eax, byte [edi + esi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], edx
cmp esi, dword [edi + 0x28]
jae 0x50c5b9
movzx eax, byte [edi + esi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], edx
cmp esi, dword [edi + 0x28]
jae 0x50c5e7
movzx eax, byte [edi + esi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], edx
cmp esi, dword [edi + 0x28]
jae 0x50c58b
movzx eax, byte [edi + esi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], edx
cmp esi, dword [edi + 0x28]
jae 0x50c55d
movzx eax, byte [edi + esi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], edx
cmp esi, dword [edi + 0x28]
jae 0x50c52f
movzx eax, byte [edi + esi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], edx
cmp esi, dword [edi + 0x28]
jae 0x50c4e3
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], edx
mov eax, dword [esp + 0xc8]
mov edx, dword [esp + 0xcc]
or eax, dword [esp + 0xd0]
or edx, dword [esp + 0xd4]
mov ecx, dword [esp + 0xc0]
mov ebx, dword [esp + 0xc4]
shld edx, eax, 8
shl eax, 8
or ecx, eax
mov eax, dword [esp + 0xb8]
or ebx, edx
mov edx, dword [esp + 0xbc]
shld ebx, ecx, 8
shl ecx, 8
or eax, ecx
mov ecx, dword [esp + 0xb0]
or edx, ebx
mov ebx, dword [esp + 0xb4]
shld edx, eax, 8
shl eax, 8
or ecx, eax
mov eax, dword [esp + 0xa8]
or ebx, edx
mov edx, dword [esp + 0xac]
shld ebx, ecx, 8
shl ecx, 8
or eax, ecx
mov ecx, dword [esp + 0xa0]
or edx, ebx
mov ebx, dword [esp + 0xa4]
shld edx, eax, 8
shl eax, 8
or ecx, eax
mov eax, dword [esp + 0x80]
or ebx, edx
mov edx, dword [esp + 0x9c]
shld ebx, ecx, 8
shl ecx, 8
or eax, ecx
mov dword [edx + ebp + 0x10], eax
mov eax, dword [esp + 0x84]
add dword [esp + 0x68], 1
mov ecx, dword [esp + 0x68]
or eax, ebx
mov dword [edx + ebp + 0x14], eax
add ebp, 0x18
cmp dword [esp + 0x64], ecx
je 0x50bdf6
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x150]
mov edi, dword [edx + 0x20]
mov eax, dword [eax + 0x60]
mov edx, dword [edi + 0x24]
cmp edx, dword [edi + 0x28]
mov dword [esp + 0x9c], eax
jb 0x50c268
mov dword [esp], edi
call fcn.005280b0
test eax, eax
jne 0x50c643
mov esi, dword [edi + 0x24]
mov dword [esp + 0xd0], 0xffff0000
mov dword [esp + 0xd4], 0xffffffff
jmp 0x50c2a9
mov dword [esp], edi
call fcn.005280b0
mov dword [esp + 0x80], 0xffffff00
mov dword [esp + 0x84], 0xffffffff
test eax, eax
je 0x50c3ba
mov eax, dword [edi + 0x24]
movzx edx, byte [eax + edi + 0x64]
add eax, 1
mov dword [edi + 0x24], eax
mov ecx, edx
sar ecx, 0x1f
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], ecx
jmp 0x50c3ba
mov dword [esp], edi
call fcn.005280b0
test eax, eax
jne 0x50c701
mov esi, dword [edi + 0x24]
mov dword [esp + 0xa0], 0xffffff00
mov dword [esp + 0xa4], 0xffffffff
jmp 0x50c393
mov dword [esp], edi
call fcn.005280b0
test eax, eax
jne 0x50c669
mov esi, dword [edi + 0x24]
mov dword [esp + 0xa8], 0xffffff00
mov dword [esp + 0xac], 0xffffffff
jmp 0x50c36c
mov dword [esp], edi
call fcn.005280b0
test eax, eax
jne 0x50c6b5
mov esi, dword [edi + 0x24]
mov dword [esp + 0xb0], 0xffffff00
mov dword [esp + 0xb4], 0xffffffff
jmp 0x50c345
mov dword [esp], edi
call fcn.005280b0
test eax, eax
jne 0x50c68f
mov esi, dword [edi + 0x24]
mov dword [esp + 0xc0], 0xffffff00
mov dword [esp + 0xc4], 0xffffffff
jmp 0x50c2f7
mov dword [esp], edi
call fcn.005280b0
test eax, eax
jne 0x50c6db
mov esi, dword [edi + 0x24]
mov dword [esp + 0xb8], 0xffffff00
mov dword [esp + 0xbc], 0xffffffff
jmp 0x50c31e
mov dword [esp], edi
call fcn.005280b0
test eax, eax
jne 0x50c727
mov esi, dword [edi + 0x24]
mov dword [esp + 0xc8], 0xffffff00
mov dword [esp + 0xcc], 0xffffffff
jmp 0x50c2d0
mov esi, dword [edi + 0x24]
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0xd0], eax
mov dword [esp + 0xd4], edx
jmp 0x50c286
mov esi, dword [edi + 0x24]
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov ecx, eax
sar ecx, 0x1f
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], ecx
jmp 0x50c36c
mov esi, dword [edi + 0x24]
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov ecx, eax
sar ecx, 0x1f
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], ecx
jmp 0x50c2f7
mov esi, dword [edi + 0x24]
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov ecx, eax
sar ecx, 0x1f
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], ecx
jmp 0x50c345
mov esi, dword [edi + 0x24]
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov ecx, eax
sar ecx, 0x1f
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
jmp 0x50c31e
mov esi, dword [edi + 0x24]
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov ecx, eax
sar ecx, 0x1f
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], ecx
jmp 0x50c393
mov esi, dword [edi + 0x24]
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov ecx, eax
sar ecx, 0x1f
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
jmp 0x50c2d0
mov dword [esp + 8], 0xb186b4
mov dword [esp + 4], 2
mov dword [esp], 7
call fcn.00405fb0
mov eax, 0xffffffff
jmp 0x50bdf8
mov eax, dword [esp + 0x44]
mov ebx, dword [eax + 0x20]
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d3d9
add eax, 1
mov dword [ebx + 0x24], eax
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d3c0
add eax, 1
mov dword [ebx + 0x24], eax
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d3a7
add eax, 1
mov dword [ebx + 0x24], eax
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d38e
add eax, 1
mov dword [ebx + 0x24], eax
mov edx, dword [esp + 0x44]
mov ebx, dword [edx + 0x20]
mov edx, dword [ebx + 0x24]
cmp edx, dword [ebx + 0x28]
jae 0x50d4d7
movzx eax, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
mov ebp, eax
cmp edx, dword [ebx + 0x28]
jae 0x50d49d
movzx esi, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
shl esi, 8
cmp edx, dword [ebx + 0x28]
jae 0x50d4ba
movzx edi, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
shl edi, 0x10
cmp edx, dword [ebx + 0x28]
jae 0x50d458
movzx ecx, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
shl ecx, 0x18
or esi, ebp
or esi, edi
or esi, ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x124], esi
mov ebx, dword [ecx + 0x20]
mov edx, dword [ebx + 0x24]
cmp edx, dword [ebx + 0x28]
jae 0x50d480
movzx eax, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
mov ebp, eax
cmp edx, dword [ebx + 0x28]
jae 0x50d43b
movzx esi, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
shl esi, 8
cmp edx, dword [ebx + 0x28]
jae 0x50d41e
movzx edi, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
shl edi, 0x10
cmp edx, dword [ebx + 0x28]
jae 0x50d3f6
movzx ecx, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
shl ecx, 0x18
mov eax, dword [esp + 0x44]
or esi, ebp
or esi, edi
or esi, ecx
mov dword [esp + 0x120], esi
mov ebx, dword [eax + 0x20]
mov edx, dword [ebx + 0x24]
cmp edx, dword [ebx + 0x28]
jae 0x50d9c3
movzx eax, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
mov ebp, eax
cmp edx, dword [ebx + 0x28]
jae 0x50d9a5
movzx esi, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
shl esi, 8
cmp edx, dword [ebx + 0x28]
jae 0x50d9e0
movzx edi, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
shl edi, 0x10
cmp edx, dword [ebx + 0x28]
jae 0x50d947
movzx ecx, byte [edx + ebx + 0x64]
add edx, 1
mov dword [ebx + 0x24], edx
shl ecx, 0x18
mov edx, dword [esp + 0x44]
or esi, ebp
or esi, edi
or esi, ecx
mov dword [esp + 0x11c], esi
mov ebx, dword [edx + 0x20]
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50da16
add eax, 1
mov dword [ebx + 0x24], eax
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d98c
add eax, 1
mov dword [ebx + 0x24], eax
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d9fd
add eax, 1
mov dword [ebx + 0x24], eax
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d4f4
add eax, 1
mov dword [ebx + 0x24], eax
mov ecx, dword [esp + 0x44]
mov ebx, dword [ecx + 0x20]
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d5c0
add eax, 1
mov dword [ebx + 0x24], eax
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d5a7
add eax, 1
mov dword [ebx + 0x24], eax
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d58e
add eax, 1
mov dword [ebx + 0x24], eax
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d575
add eax, 1
mov dword [ebx + 0x24], eax
mov eax, dword [esp + 0x44]
mov ebx, dword [eax + 0x20]
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d50d
movzx edx, byte [eax + ebx + 0x64]
add eax, 1
mov dword [ebx + 0x24], eax
mov dword [esp + 0x4c], edx
add edx, 1
mov dword [esp], edx
call sub.msvcrt.dll_malloc
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x44]
mov esi, dword [eax + 0x20]
mov eax, dword [esp + 0x4c]
test eax, eax
jle 0x50ca82
mov ebp, dword [esp + 0x3c]
lea edx, [esi + 0x64]
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x30], edx
jmp 0x50ca3e
cmp edx, eax
mov ebx, ecx
jb 0x50ca64
cmp ebx, edi
jle 0x50ca1c
mov ebx, edi
mov eax, dword [esp + 0x30]
sub edi, ebx
add eax, dword [esi + 0x24]
mov dword [esp + 8], ebx
mov dword [esp], ebp
mov dword [esp + 4], eax
call sub.msvcrt.dll_memcpy
add dword [esi + 0x24], ebx
test edi, edi
jle 0x50ca82
add ebp, ebx
mov edx, dword [esi + 0x28]
mov eax, dword [esi + 0x24]
mov ecx, edx
sub ecx, eax
jne 0x50ca10
mov dword [esp], esi
call fcn.005280b0
test eax, eax
je 0x50ca82
mov edx, dword [esi + 0x28]
mov eax, dword [esi + 0x24]
mov ebx, edx
sub ebx, eax
cmp edx, eax
jae 0x50ca16
mov dword [esp + 8], 0xb173d8
mov dword [esp + 4], 2
mov dword [esp], 7
call fcn.00405fb0
jmp 0x50ca16
mov ecx, dword [esp + 0x3c]
lea edx, [esp + 0x120]
mov eax, dword [esp + 0x4c]
lea ebx, [esp + 0x124]
mov byte [ecx + eax], 0
lea eax, [esp + 0x11c]
mov dword [esp + 0x18], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
mov dword [esp + 0x14], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb1874c
mov dword [esp + 4], 6
mov dword [esp], 7
call fcn.00405fb0
mov ecx, dword [esp + 0x3c]
mov dword [esp], ecx
call sub.msvcrt.dll_free
mov eax, dword [esp + 0x124]
bswap eax
cmp eax, 0x64686c72
je 0x50d374
cmp eax, 0x6d686c72
je 0x50d35a
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
mov dword [esp + 8], 0xb1877c
mov dword [esp + 4], 6
mov dword [esp], 7
call fcn.00405fb0
xor eax, eax
jmp 0x50bdf8
mov edx, dword [esp + 0x44]
mov ebx, dword [edx + 0x20]
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d546
movzx ecx, byte [eax + ebx + 0x64]
add eax, 1
mov dword [ebx + 0x24], eax
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0x40]
xor edi, edi
mov esi, 0x13
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb18732
mov dword [esp + 4], 6
mov dword [esp + 0xc], ecx
mov dword [esp], 7
call fcn.00405fb0
cmp dword [esp + 0x48], 1
je 0x50cb98
mov esi, 0xb
xor edi, edi
mov eax, dword [esp + 0x44]
mov ebx, dword [eax + 0x20]
mov ebp, dword [ebx + 0x28]
mov eax, ebp
sub eax, dword [ebx + 0x24]
je 0x50cce0
mov ecx, eax
mov edx, ecx
mov eax, ecx
sar edx, 0x1f
cmp edx, edi
jl 0x50cbc9
jg 0x50cbc0
cmp ecx, esi
jbe 0x50cbc9
mov edx, esi
mov ecx, esi
mov eax, esi
sar edx, 0x1f
add dword [ebx + 0x24], ecx
sub esi, eax
sbb edi, edx
cmp edi, 0
jg 0x50cba2
jl 0x50cbdc
cmp esi, 0
ja 0x50cba2
mov edx, dword [esp + 0x44]
mov ebx, dword [edx + 0x20]
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50d96f
movzx ebp, byte [ebx + eax + 0x64]
lea ecx, [eax + 1]
mov dword [ebx + 0x24], ecx
shl ebp, 8
cmp ecx, dword [ebx + 0x28]
jae 0x50d92a
movzx eax, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
mov edi, eax
cmp ecx, dword [ebx + 0x28]
jae 0x50d90d
movzx eax, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
mov esi, eax
cmp ecx, dword [ebx + 0x28]
jae 0x50d8e5
movzx eax, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
mov edx, eax
or edi, ebp
mov ecx, dword [esp + 0x150]
shl edi, 8
or esi, edi
shl esi, 8
or edx, esi
cmp dword [esp + 0x48], 1
mov dword [ecx + 0x18], edx
je 0x50d6c6
mov eax, dword [esp + 0x44]
mov ebx, dword [eax + 0x20]
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x28]
jae 0x50da71
movzx ebp, byte [ebx + eax + 0x64]
lea ecx, [eax + 1]
mov dword [ebx + 0x24], ecx
shl ebp, 8
cmp ecx, dword [ebx + 0x28]
jae 0x50dad3
movzx eax, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
mov edi, eax
cmp ecx, dword [ebx + 0x28]
jae 0x50da8e
movzx eax, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
mov esi, eax
cmp ecx, dword [ebx + 0x28]
jae 0x50daab
movzx eax, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
mov edx, eax
or edi, ebp
mov ecx, dword [esp + 0x150]
xor eax, eax
shl edi, 8
or esi, edi
shl esi, 8
or edx, esi
mov dword [ecx + 0x1c], edx
jmp 0x50bdf8
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
je 0x50cbdc
mov ebp, dword [ebx + 0x28]
mov ecx, ebp
sub ecx, dword [ebx + 0x24]
jmp 0x50cbaf
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb189df
mov dword [esp + 4], 6
mov dword [esp + 0xc], ecx
mov dword [esp], 7
call fcn.00405fb0
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x150]
add edx, 1
mov dword [esp + 8], eax
jmp 0x50b9f4
mov edx, dword [esp + 0x44]
mov eax, dword [edx + 0x20]
call fcn.00504010
mov ecx, dword [esp + 0x44]
mov ebx, eax
mov eax, dword [ecx + 0x20]
call fcn.00504010
mov edx, ebx
shl edx, 8
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb188ac
mov dword [esp + 4], 6
mov dword [esp], 7
mov ebp, eax
mov eax, ebx
shl eax, 0x10
or eax, edx
or eax, ebx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x40]
shl ebx, 0x18
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], ebp
mov dword [esp + 0xc], eax
call fcn.00405fb0
mov edx, dword [esp + 0x150]
mov dword [edx + 0x64], ebp
mov dword [esp + 4], 0xc
mov dword [esp], ebp
call sub.msvcrt.dll_calloc
mov ecx, dword [esp + 0x150]
test ebp, ebp
mov dword [ecx + 0x68], eax
jle 0x50bdf6
xor edi, edi
xor esi, esi
mov eax, dword [esp + 0x150]
mov ebx, esi
add edi, 1
mov edx, dword [esp + 0x44]
add ebx, dword [eax + 0x68]
mov eax, dword [edx + 0x20]
call fcn.00504010
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x150]
sub eax, 1
mov dword [ebx], eax
mov eax, dword [edx + 0x20]
mov ebx, esi
add ebx, dword [ecx + 0x68]
call fcn.00504010
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x150]
mov dword [ebx + 4], eax
mov eax, dword [edx + 0x20]
mov ebx, esi
add ebx, dword [ecx + 0x68]
add esi, 0xc
call fcn.00504010
cmp ebp, edi
mov dword [ebx + 8], eax
jne 0x50cdd5
jmp 0x50bdf6
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb187bc
mov dword [esp + 4], 6
mov dword [esp + 0xc], ecx
mov dword [esp], 7
call fcn.00405fb0
mov eax, dword [esp + 0x150]
mov dword [eax + 4], 2
xor eax, eax
jmp 0x50bdf8
mov eax, dword [esp + 0x40]
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb186e1
mov dword [esp + 4], 6
mov dword [esp + 0xc], eax
mov dword [esp], 7
call fcn.00405fb0
mov edx, dword [esp + 0x150]
mov dword [edx + 0x3c], ebx
mov dword [esp], ebx
call sub.msvcrt.dll_malloc
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x44]
mov ebx, dword [ecx + 0x3c]
mov esi, dword [edx + 0x20]
mov dword [ecx + 0x40], eax
test ebx, ebx
mov edi, ebx
jle 0x50cf60
lea ecx, [esi + 0x64]
mov ebp, eax
mov dword [esp + 0x38], ecx
jmp 0x50cf0e
cmp edx, eax
mov ebx, ecx
jb 0x50cf38
cmp ebx, edi
jle 0x50ceec
mov ebx, edi
mov eax, dword [esp + 0x38]
sub edi, ebx
add eax, dword [esi + 0x24]
mov dword [esp + 8], ebx
mov dword [esp], ebp
mov dword [esp + 4], eax
call sub.msvcrt.dll_memcpy
add dword [esi + 0x24], ebx
test edi, edi
jle 0x50cf56
add ebp, ebx
mov edx, dword [esi + 0x28]
mov eax, dword [esi + 0x24]
mov ecx, edx
sub ecx, eax
jne 0x50cee0
mov dword [esp], esi
call fcn.005280b0
test eax, eax
je 0x50da62
mov edx, dword [esi + 0x28]
mov eax, dword [esi + 0x24]
mov ebx, edx
sub ebx, eax
cmp edx, eax
jae 0x50cee6
mov dword [esp + 8], 0xb173d8
mov dword [esp + 4], 2
mov dword [esp], 7
call fcn.00405fb0
jmp 0x50cee6
mov edx, dword [esp + 0x150]
mov ebx, dword [edx + 0x3c]
mov eax, dword [esp + 0x150]
mov ecx, dword [eax + 0x40]
movzx eax, byte [ecx + 0x24]
movzx edx, byte [ecx + 0x25]
shl eax, 8
or eax, edx
mov dword [esp + 0x24], eax
movzx eax, byte [ecx + 0x20]
movzx edx, byte [ecx + 0x21]
shl eax, 8
or eax, edx
mov dword [esp + 0x20], eax
movzx edx, byte [ecx + 0x14]
movzx eax, byte [ecx + 0x15]
shl edx, 0x18
shl eax, 0x10
or edx, eax
movzx eax, byte [ecx + 0x17]
or edx, eax
movzx eax, byte [ecx + 0x16]
shl eax, 8
or edx, eax
mov dword [esp + 0x1c], edx
movzx edx, byte [ecx + 0xc]
movzx eax, byte [ecx + 0xd]
shl edx, 0x18
shl eax, 0x10
or edx, eax
movzx eax, byte [ecx + 0xf]
or edx, eax
movzx eax, byte [ecx + 0xe]
shl eax, 8
or edx, eax
mov dword [esp + 0x18], edx
movzx eax, byte [ecx + 1]
mov dword [esp + 0x14], eax
movzx eax, byte [ecx]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0xb186f8
mov dword [esp + 4], 6
mov dword [esp + 0x10], eax
mov dword [esp], 7
call fcn.00405fb0
xor eax, eax
jmp 0x50bdf8
mov edx, dword [esp + 0x44]
mov eax, dword [edx + 0x20]
call fcn.00504010
mov ecx, dword [esp + 0x44]
mov ebx, eax
mov eax, dword [ecx + 0x20]
call fcn.00504010
mov edx, ebx
shl edx, 8
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb18a38
mov dword [esp + 4], 6
mov dword [esp], 7
mov dword [esp + 0x6c], eax
mov eax, ebx
shl eax, 0x10
or eax, edx
mov edx, dword [esp + 0x40]
or eax, ebx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x6c]
shl ebx, 0x18
mov dword [esp + 0x18], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x14], eax
call fcn.00405fb0
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x150]
mov dword [ecx + 0x7c], eax
mov dword [esp + 4], 0x1c
mov dword [esp], eax
call sub.msvcrt.dll_calloc
mov ebp, dword [esp + 0x6c]
mov edx, dword [esp + 0x150]
test ebp, ebp
mov dword [edx + 0x80], eax
jle 0x50bdf6
xor ebp, ebp
xor edi, edi
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx + 0x20]
call fcn.00504010
mov edx, dword [esp + 0x44]
mov esi, eax
mov eax, dword [edx + 0x20]
call fcn.00504010
mov ecx, dword [esp + 0x44]
mov ebx, eax
mov eax, dword [ecx + 0x20]
call fcn.00504010
mov ecx, dword [esp + 0x150]
mov edx, dword [ecx + 0x80]
mov dword [edi + edx + 8], eax
mov dword [edi + edx], esi
mov dword [edi + edx + 4], ebx
add edi, 0x1c
push eax
fild dword [esp]
add esp, 4
fmul dword [0xb18b20]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x14], ebp
add ebp, 1
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], esi
mov dword [esp + 0x10], 0xb178e8
fstp qword [esp + 0x20]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0xb18a70
mov dword [esp + 4], 6
mov dword [esp], 7
call fcn.00405fb0
cmp dword [esp + 0x6c], ebp
jne 0x50d0ae
jmp 0x50bdf6
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx + 0x20]
call fcn.00504010
mov edx, dword [esp + 0x44]
mov eax, dword [edx + 0x20]
call fcn.00504010
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb18938
mov dword [esp + 4], 6
mov dword [esp + 0xc], ecx
mov dword [esp], 7
mov ebp, eax
mov dword [esp + 0x14], eax
call fcn.00405fb0
mov eax, dword [esp + 0x150]
cmp ebp, dword [eax + 0x5c]
jle 0x50d1c8
cmp ebp, 0xaaaaaaa
mov edx, dword [eax + 0x60]
jbe 0x50da4a
mov dword [esp], edx
call sub.msvcrt.dll_free
xor eax, eax
mov edx, dword [esp + 0x150]
mov dword [edx + 0x60], eax
mov dword [edx + 0x5c], ebp
xor edi, edi
xor esi, esi
test ebp, ebp
jle 0x50bdf6
mov edx, dword [esp + 0x44]
mov ebx, esi
add edi, 1
mov ecx, dword [esp + 0x150]
add esi, 0x18
mov eax, dword [edx + 0x20]
add ebx, dword [ecx + 0x60]
call fcn.00504010
cmp ebp, edi
mov dword [ebx + 0x14], 0
mov dword [ebx + 0x10], eax
jne 0x50d1d4
jmp 0x50bdf6
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb187d3
mov dword [esp + 4], 6
mov dword [esp], 7
call fcn.00405fb0
mov edx, dword [esp + 0x150]
xor eax, eax
mov dword [edx + 4], 4
jmp 0x50bdf8
mov edx, dword [esp + 0x40]
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb187d3
mov dword [esp + 4], 6
mov dword [esp + 0xc], edx
mov dword [esp], 7
call fcn.00405fb0
mov ecx, dword [esp + 0x150]
xor eax, eax
mov dword [ecx + 4], 4
jmp 0x50bdf8
mov edx, dword [esp + 0x44]
mov eax, dword [edx + 0x20]
call fcn.00504010
mov ecx, dword [esp + 0x44]
mov ebx, eax
mov eax, dword [ecx + 0x20]
call fcn.00504010
mov edx, ebx
shl edx, 8
mov dword [esp + 0x10], 0xb178e8
mov dword [esp + 8], 0xb18994
mov dword [esp + 4], 6
mov dword [esp], 7
mov edi, eax
mov eax, ebx
shl eax, 0x10
or eax, edx
or eax, ebx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x40]
shl ebx, 0x18
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], edi
mov dword [esp + 0xc], eax
call fcn.00405fb0
mov edx, dword [esp + 0x150]
mov dword [edx + 0x74], edi
mov dword [esp + 4], 4
mov dword [esp], edi
call sub.msvcrt.dll_calloc
mov ecx, dword [esp + 0x150]
test edi, edi
mov dword [ecx + 0x78], eax
jle 0x50bdf6
xor esi, esi
mov eax, dword [esp + 0x150]
lea ebx, [esi*4]
add esi, 1
mov edx, dword [esp + 0x44]
add ebx, dword [eax + 0x78]
mov eax, dword [edx + 0x20]
call fcn.00504010
sub eax, 1
cmp edi, esi
mov dword [ebx], eax
jne 0x50d316
jmp 0x50bdf6
mov eax, edi
shl eax, 4
mov dword [esp + 4], eax
mov dword [esp], edx
call sub.msvcrt.dll_realloc
jmp 0x50c167
mov edx, dword [esp + 0x150]
mov eax, dword [esp + 0x120]
bswap eax
mov dword [edx + 0x10], eax
xor eax, eax
jmp 0x50bdf8
mov ecx, dword [esp + 0x150]
mov eax, dword [esp + 0x120]
bswap eax
mov dword [ecx + 0x14], eax
xor eax, eax
jmp 0x50bdf8
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
je 0x50c7c2
add dword [ebx + 0x24], 1
jmp 0x50c7c2
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
je 0x50c7b0
add dword [ebx + 0x24], 1
jmp 0x50c7b0
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
je 0x50c79e
add dword [ebx + 0x24], 1
jmp 0x50c79e
mov dword [esp], ebx
lea esi, [esi]
call fcn.005280b0
test eax, eax
je 0x50c78c
add dword [ebx + 0x24], 1
jmp 0x50c78c
mov dword [esp], ebx
call fcn.005280b0
xor ecx, ecx
test eax, eax
je 0x50c899
mov eax, dword [ebx + 0x24]
movzx ecx, byte [eax + ebx + 0x64]
add eax, 1
mov dword [ebx + 0x24], eax
shl ecx, 0x18
jmp 0x50c899
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db6c
mov edx, dword [ebx + 0x24]
mov edi, 0xff000000
jmp 0x50c882
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db26
mov edx, dword [ebx + 0x24]
mov esi, 0xffff0000
jmp 0x50c86b
mov dword [esp], ebx
call fcn.005280b0
xor ecx, ecx
test eax, eax
je 0x50c827
mov eax, dword [ebx + 0x24]
movzx ecx, byte [eax + ebx + 0x64]
add eax, 1
mov dword [ebx + 0x24], eax
shl ecx, 0x18
jmp 0x50c827
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db36
mov edx, dword [ebx + 0x24]
mov ebp, 0xffffff00
jmp 0x50c854
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db2e
mov edx, dword [ebx + 0x24]
mov esi, 0xffff0000
jmp 0x50c7f9
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db3e
mov edx, dword [ebx + 0x24]
mov edi, 0xff000000
jmp 0x50c810
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db16
mov edx, dword [ebx + 0x24]
mov ebp, 0xffffff00
jmp 0x50c7e2
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
je 0x50c967
add dword [ebx + 0x24], 1
jmp 0x50c967
mov dword [esp], ebx
call fcn.005280b0
mov edx, 0xffffff01
mov dword [esp + 0x4c], 0xffffff00
test eax, eax
je 0x50c9db
mov eax, dword [ebx + 0x24]
movzx ecx, byte [eax + ebx + 0x64]
add eax, 1
mov dword [ebx + 0x24], eax
mov edx, ecx
add edx, 1
mov dword [esp + 0x4c], ecx
jmp 0x50c9db
mov dword [esp], ebx
call fcn.005280b0
mov dword [esp + 0x48], 0xffffff00
test eax, eax
je 0x50cb57
mov eax, dword [ebx + 0x24]
movzx edx, byte [eax + ebx + 0x64]
add eax, 1
mov dword [ebx + 0x24], eax
mov dword [esp + 0x48], edx
jmp 0x50cb57
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
je 0x50c9b6
add dword [ebx + 0x24], 1
jmp 0x50c9b6
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
je 0x50c9a4
add dword [ebx + 0x24], 1
jmp 0x50c9a4
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
je 0x50c992
add dword [ebx + 0x24], 1
jmp 0x50c992
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
je 0x50c980
add dword [ebx + 0x24], 1
jmp 0x50c980
mov dword [esp], ebx
lea esi, [esi]
call fcn.005280b0
mov edx, 0xffffff00
test eax, eax
je 0x50baf8
mov eax, dword [ebx + 0x24]
movzx edx, byte [eax + ebx + 0x64]
add eax, 1
mov dword [ebx + 0x24], eax
jmp 0x50baf8
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db46
mov ecx, dword [ebx + 0x24]
mov edi, 0xffffff00
jmp 0x50bae2
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db4e
mov ecx, dword [ebx + 0x24]
mov ebp, 0xffffff00
jmp 0x50bacc
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db56
mov ecx, dword [ebx + 0x24]
mov esi, 0xffff0000
jmp 0x50bab6
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
je 0x50ba95
add dword [ebx + 0x24], 1
jmp 0x50ba95
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
nop
je 0x50ba71
add dword [ebx + 0x24], 1
jmp 0x50ba71
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
je 0x50ba5f
add dword [ebx + 0x24], 1
jmp 0x50ba5f
mov dword [esp], ebx
nop
lea esi, [esi]
call fcn.005280b0
test eax, eax
je 0x50ba83
add dword [ebx + 0x24], 1
jmp 0x50ba83
mov eax, dword [esp + 0x44]
mov edi, dword [eax + 0x20]
mov edx, dword [edi + 0x24]
cmp edx, dword [edi + 0x28]
jae 0x50dd3b
movzx eax, byte [edi + edx + 0x64]
lea esi, [edx + 1]
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0x108], eax
mov eax, dword [esp + 0x108]
mov dword [esp + 0x10c], edx
mov edx, dword [esp + 0x10c]
mov dword [edi + 0x24], esi
shld edx, eax, 8
shl eax, 8
mov dword [esp + 0x108], eax
mov dword [esp + 0x10c], edx
cmp esi, dword [edi + 0x28]
jae 0x50dccf
movzx eax, byte [edi + esi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], edx
cmp esi, dword [edi + 0x28]
jae 0x50dd05
movzx eax, byte [edi + esi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0xf8], eax
mov dword [esp + 0xfc], edx
cmp esi, dword [edi + 0x28]
jae 0x50dc99
movzx eax, byte [edi + esi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0xf0], eax
mov dword [esp + 0xf4], edx
cmp esi, dword [edi + 0x28]
jae 0x50dc63
movzx eax, byte [edi + esi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0xe8], eax
mov dword [esp + 0xec], edx
cmp esi, dword [edi + 0x28]
jae 0x50dc2d
movzx eax, byte [edi + esi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0xe0], eax
mov dword [esp + 0xe4], edx
cmp esi, dword [edi + 0x28]
jae 0x50dbf7
movzx eax, byte [edi + esi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0xd8], eax
mov dword [esp + 0xdc], edx
cmp esi, dword [edi + 0x28]
jae 0x50dbab
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov edx, eax
sar edx, 0x1f
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], edx
mov eax, dword [esp + 0x100]
mov edx, dword [esp + 0x104]
or eax, dword [esp + 0x108]
or edx, dword [esp + 0x10c]
mov ecx, dword [esp + 0xf8]
mov ebx, dword [esp + 0xfc]
shld edx, eax, 8
shl eax, 8
or ecx, eax
mov eax, dword [esp + 0xf0]
or ebx, edx
mov edx, dword [esp + 0xf4]
shld ebx, ecx, 8
shl ecx, 8
or eax, ecx
mov ecx, dword [esp + 0xe8]
or edx, ebx
mov ebx, dword [esp + 0xec]
shld edx, eax, 8
shl eax, 8
or ecx, eax
mov eax, dword [esp + 0xe0]
or ebx, edx
mov edx, dword [esp + 0xe4]
shld ebx, ecx, 8
shl ecx, 8
or eax, ecx
mov ecx, dword [esp + 0xd8]
or edx, ebx
mov ebx, dword [esp + 0xdc]
shld edx, eax, 8
shl eax, 8
or ecx, eax
mov eax, dword [esp + 0x90]
or ebx, edx
shld ebx, ecx, 8
shl ecx, 8
or eax, ecx
mov ecx, dword [esp + 0x150]
mov dword [ecx + 0x1c], eax
xor eax, eax
jmp 0x50bdf8
mov dword [esp], ebx
call fcn.005280b0
mov edx, 0xffffff00
test eax, eax
je 0x50cc3f
mov eax, dword [ebx + 0x24]
movzx edx, byte [eax + ebx + 0x64]
add eax, 1
mov dword [ebx + 0x24], eax
jmp 0x50cc3f
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db74
mov ecx, dword [ebx + 0x24]
mov esi, 0xffffff00
jmp 0x50cc29
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50daf0
mov ecx, dword [ebx + 0x24]
mov edi, 0xffffff00
jmp 0x50cc13
mov dword [esp], ebx
call fcn.005280b0
xor ecx, ecx
test eax, eax
je 0x50c90b
mov eax, dword [ebx + 0x24]
movzx ecx, byte [eax + ebx + 0x64]
add eax, 1
mov dword [ebx + 0x24], eax
shl ecx, 0x18
jmp 0x50c90b
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db00
mov ecx, dword [ebx + 0x24]
mov ebp, 0xffff0000
jmp 0x50cbfd
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
je 0x50c943
add dword [ebx + 0x24], 1
jmp 0x50c943
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
nop
jne 0x50daf8
mov edx, dword [ebx + 0x24]
mov esi, 0xffff0000
jmp 0x50c8dd
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db7c
mov edx, dword [ebx + 0x24]
mov ebp, 0xffffff00
jmp 0x50c8c6
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db1e
mov edx, dword [ebx + 0x24]
mov edi, 0xff000000
jmp 0x50c8f4
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
je 0x50c955
add dword [ebx + 0x24], 1
jmp 0x50c955
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
je 0x50c931
add dword [ebx + 0x24], 1
jmp 0x50c931
mov ecx, dword [esp + 0x64]
mov dword [esp], edx
lea eax, [ecx + ecx*2]
shl eax, 3
mov dword [esp + 4], eax
call sub.msvcrt.dll_realloc
jmp 0x50c23c
lea eax, [ebp + ebp*2]
shl eax, 3
mov dword [esp + 4], eax
mov dword [esp], edx
call sub.msvcrt.dll_realloc
jmp 0x50d1bb
mov eax, dword [esp + 0x150]
mov ebx, dword [eax + 0x3c]
jmp 0x50cf60
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db8d
mov ecx, dword [ebx + 0x24]
mov ebp, 0xffff0000
jmp 0x50cc81
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50dba3
mov ecx, dword [ebx + 0x24]
mov esi, 0xffffff00
jmp 0x50ccad
mov dword [esp], ebx
call fcn.005280b0
mov edx, 0xffffff00
test eax, eax
je 0x50ccc3
mov eax, dword [ebx + 0x24]
movzx edx, byte [eax + ebx + 0x64]
add eax, 1
mov dword [ebx + 0x24], eax
jmp 0x50ccc3
mov dword [esp], ebx
call fcn.005280b0
test eax, eax
jne 0x50db85
mov ecx, dword [ebx + 0x24]
mov edi, 0xffffff00
jmp 0x50cc97
mov ecx, dword [ebx + 0x24]
jmp 0x50cc06
mov edx, dword [ebx + 0x24]
jmp 0x50c8cf
mov ecx, dword [ebx + 0x24]
movzx ebp, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
shl ebp, 8
jmp 0x50cbfd
mov edx, dword [ebx + 0x24]
jmp 0x50c7d5
mov edx, dword [ebx + 0x24]
jmp 0x50c8e6
mov edx, dword [ebx + 0x24]
jmp 0x50c85d
mov edx, dword [ebx + 0x24]
jmp 0x50c7eb
mov edx, dword [ebx + 0x24]
jmp 0x50c847
mov edx, dword [ebx + 0x24]
jmp 0x50c802
mov ecx, dword [ebx + 0x24]
jmp 0x50bad5
mov ecx, dword [ebx + 0x24]
jmp 0x50babf
mov ecx, dword [ebx + 0x24]
movzx esi, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
shl esi, 8
jmp 0x50bab6
mov edx, dword [ebx + 0x24]
jmp 0x50c874
mov ecx, dword [ebx + 0x24]
jmp 0x50cc1c
mov edx, dword [ebx + 0x24]
nop
jmp 0x50c8b9
mov ecx, dword [ebx + 0x24]
jmp 0x50cc8a
mov ecx, dword [ebx + 0x24]
movzx ebp, byte [ecx + ebx + 0x64]
add ecx, 1
mov dword [ebx + 0x24], ecx
shl ebp, 8
jmp 0x50cc81
mov ecx, dword [ebx + 0x24]
jmp 0x50cca0
mov dword [esp], edi
call fcn.005280b0
mov dword [esp + 0x90], 0xffffff00
mov dword [esp + 0x94], 0xffffffff
test eax, eax
je 0x50d82b
mov eax, dword [edi + 0x24]
movzx edx, byte [eax + edi + 0x64]
add eax, 1
mov dword [edi + 0x24], eax
mov ecx, edx
sar ecx, 0x1f
mov dword [esp + 0x90], edx
mov dword [esp + 0x94], ecx
jmp 0x50d82b
mov dword [esp], edi
call fcn.005280b0
test eax, eax
je 0x50dd57
mov esi, dword [edi + 0x24]
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov ecx, eax
sar ecx, 0x1f
mov dword [esp + 0xd8], eax
mov dword [esp + 0xdc], ecx
jmp 0x50d804
mov dword [esp], edi
call fcn.005280b0
test eax, eax
je 0x50dd75
mov esi, dword [edi + 0x24]
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov ecx, eax
sar ecx, 0x1f
mov dword [esp + 0xe0], eax
mov dword [esp + 0xe4], ecx
jmp 0x50d7dd
mov dword [esp], edi
call fcn.005280b0
test eax, eax
je 0x50ddb1
mov esi, dword [edi + 0x24]
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov ecx, eax
sar ecx, 0x1f
mov dword [esp + 0xe8], eax
mov dword [esp + 0xec], ecx
jmp 0x50d7b6
mov dword [esp], edi
call fcn.005280b0
test eax, eax
je 0x50dded
mov esi, dword [edi + 0x24]
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov ecx, eax
sar ecx, 0x1f
mov dword [esp + 0xf0], eax
mov dword [esp + 0xf4], ecx
jmp 0x50d78f
mov dword [esp], edi
call fcn.005280b0
test eax, eax
je 0x50ddcf
mov esi, dword [edi + 0x24]
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov ecx, eax
sar ecx, 0x1f
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], ecx
jmp 0x50d741
mov dword [esp], edi
call fcn.005280b0
test eax, eax
je 0x50de0b
mov esi, dword [edi + 0x24]
movzx eax, byte [esi + edi + 0x64]
add esi, 1
mov dword [edi + 0x24], esi
mov ecx, eax
sar ecx, 0x1f
mov dword [esp + 0xf8], eax
mov dword [esp + 0xfc], ecx
jmp 0x50d768
mov dword [esp], edi
call fcn.005280b0
test eax, eax
je 0x50dd93
mov esi, dword [edi + 0x24]
movzx eax, byte [esi + edi + 0x64]
add esi, 1
jmp 0x50d6e1
mov esi, dword [edi + 0x24]
mov dword [esp + 0xd8], 0xffffff00
mov dword [esp + 0xdc], 0xffffffff
jmp 0x50d804
mov esi, dword [edi + 0x24]
mov dword [esp + 0xe0], 0xffffff00
mov dword [esp + 0xe4], 0xffffffff
jmp 0x50d7dd
mov esi, dword [edi + 0x24]
mov dword [esp + 0x108], 0xffff0000
mov dword [esp + 0x10c], 0xffffffff
jmp 0x50d71a
mov esi, dword [edi + 0x24]
mov dword [esp + 0xe8], 0xffffff00
mov dword [esp + 0xec], 0xffffffff
jmp 0x50d7b6
mov esi, dword [edi + 0x24]
mov dword [esp + 0x100], 0xffffff00
mov dword [esp + 0x104], 0xffffffff
jmp 0x50d741
mov esi, dword [edi + 0x24]
mov dword [esp + 0xf0], 0xffffff00
mov dword [esp + 0xf4], 0xffffffff
jmp 0x50d78f
mov esi, dword [edi + 0x24]
mov dword [esp + 0xf8], 0xffffff00
mov dword [esp + 0xfc], 0xffffffff
jmp 0x50d768