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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xc4
push ebx
push esi
push edi
push 0x64
mov edi, eax
mov byte [esp + 0x1b], 0
call dword [sym.imp.MSVCR90.dll_malloc]
add esp, 4
mov dword [esp + 0x10], eax
test eax, eax
jne 0x53d0ff
push 0x2031
push 6
call fcn.00406f10
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0xc]
mov ebx, dword [eax]
lea edx, [esp + 0xb8]
push edx
push 2
lea eax, [esp + 0x20]
xor ecx, ecx
push eax
push edi
mov word [esp + 0x2c], cx
mov dword [esp + 0x28], ecx
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
cmp ebx, 0x23
jl 0x53dcbd
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 0x10]
push esi
push 1
lea eax, [esp + 0x48]
push eax
push edi
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], edx
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ecx, dword [esp + 0x10]
push eax
push 2
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
lea edx, [esp + 0x88]
push edx
push 2
lea eax, [esp + 0x20]
push eax
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ecx, dword [esp + 0x10]
push eax
push 0x10
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
lea edx, [esp + 0x80]
push edx
push 2
lea eax, [esp + 0x20]
push eax
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ecx, dword [esp + 0x10]
push eax
push 0xd
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov edx, dword [esp + 0x10]
mov al, byte [edx + 0xc]
mov byte [esp + 0x23], al
cmp al, 1
jne 0x53d352
lea eax, [esp + 0xb0]
push eax
push 2
lea ecx, [esp + 0x20]
push ecx
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov edx, dword [esp + 0x10]
push eax
push 0x14
push edx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x10]
add ecx, 0xffffffeb
mov dword [esp + 0xc], ecx
test ecx, ecx
jle 0x53d2db
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
xor ebx, ebx
test eax, eax
jle 0x53d2aa
mov ecx, dword [esp + 0x10]
push 0
push 0x64
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ecx, dword [esp + 0xc]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
inc ebx
add eax, edx
cmp ebx, eax
jl 0x53d274
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
push 0
sub ecx, eax
push ecx
mov ecx, dword [esp + 0x18]
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
lea edx, [esp + 0x78]
push edx
push 2
lea eax, [esp + 0x20]
push eax
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ecx, dword [esp + 0x10]
push eax
push 0x10
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
lea edx, [esp + 0x90]
push edx
push 2
lea eax, [esp + 0x20]
push eax
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ecx, dword [esp + 0x10]
push eax
push 0xd
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
lea edx, [esp + 0x98]
push edx
push 2
lea eax, [esp + 0x20]
push eax
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ecx, dword [esp + 0x10]
push eax
push 0x21
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov esi, dword [esp + 0x10]
mov ecx, dword [esi + 0x15]
mov edx, dword [esi + 0x19]
mov eax, dword [esi + 0x1d]
mov dword [esp + 0x3c], ecx
add ecx, 0xffffffde
mov dword [esp + 0x28], edx
mov dword [esp + 0x38], eax
mov dword [esp + 0xc], ecx
test ecx, ecx
jle 0x53d433
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
xor ebx, ebx
test eax, eax
jle 0x53d406
mov edi, edi
push 0
push 0x64
push esi
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ecx, dword [esp + 0xc]
mov esi, dword [esp + 0x10]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
inc ebx
add eax, edx
cmp ebx, eax
jl 0x53d3d0
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
push 0
sub ecx, eax
push ecx
push esi
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
lea ecx, [esp + 0xc8]
push ecx
push 2
lea edx, [esp + 0x20]
push edx
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ecx, dword [esp + 0x28]
sub ecx, dword [esp + 0x3c]
mov dword [esp + 0xc], ecx
test ecx, ecx
jle 0x53d4d8
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
xor ebx, ebx
test eax, eax
jle 0x53d4b2
mov ecx, dword [esp + 0x10]
push 0
push 0x64
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ecx, dword [esp + 0xc]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
inc ebx
add eax, edx
cmp ebx, eax
jl 0x53d47c
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
push 0
sub ecx, eax
push ecx
mov ecx, dword [esp + 0x18]
push ecx
push edi
call fcn.00423d00
jmp 0x53d4f6
mov edx, dword [ebp + 0x1c]
push edi
push edx
lea eax, [esp + 0x14]
push 2
push eax
mov byte [esp + 0x27], 1
mov dword [esp + 0x1c], 0
call fcn.00538b70
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ecx, dword [esp + 0xc]
lea edx, [esp + 0xc0]
push edx
push 2
lea eax, [esp + 0x20]
push eax
push edi
mov dword [esp + 0x58], ecx
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ecx, dword [esp + 0x38]
sub ecx, dword [esp + 0x28]
mov dword [esp + 0xc], ecx
test ecx, ecx
jle 0x53d5b0
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
xor ebx, ebx
test eax, eax
jle 0x53d58a
mov ecx, dword [esp + 0x10]
push 0
push 0x64
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ecx, dword [esp + 0xc]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
inc ebx
add eax, edx
cmp ebx, eax
jl 0x53d554
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
push 0
sub ecx, eax
push ecx
mov ecx, dword [esp + 0x18]
push ecx
push edi
call fcn.00423d00
jmp 0x53d5ce
mov edx, dword [ebp + 0x18]
push edi
push edx
lea eax, [esp + 0x14]
push 2
push eax
mov byte [esp + 0x27], 1
mov dword [esp + 0x1c], 0
call fcn.00538b70
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
lea ecx, [esp + 0xa8]
push ecx
push 2
lea edx, [esp + 0x20]
push edx
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
xor ebx, ebx
cmp dword [ebp + 0x10], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x2c], ebx
jle 0x53d66a
mov dword [esp + 0x34], ebx
mov dword [esp + 0x30], ebx
jmp 0x53d618
xor ebx, ebx
push ebx
push 4
lea eax, [esp + 0x3c]
push eax
push edi
call fcn.00423e80
mov esi, eax
add esp, 0x10
cmp esi, ebx
jne 0x53dcbd
mov eax, dword [esp + 0x30]
inc eax
cmp eax, 4
mov dword [esp + 0x30], eax
jl 0x53d616
lea ecx, [esp + 0x40]
push ecx
push 2
lea edx, [esp + 0x20]
push edx
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov dword [esp + 0x24], 0x10
xor ebx, ebx
cmp dword [ebp + 0x10], ebx
mov dword [esp + 0x30], ebx
jle 0x53d87e
mov eax, dword [ebp + 0x14]
mov esi, dword [ebp + 0x20]
mov edx, eax
sub esi, eax
mov dword [esp + 0x28], edx
mov dword [esp + 0x4c], esi
jmp 0x53d694
mov esi, dword [esp + 0x4c]
mov eax, dword [edx]
mov eax, dword [eax + 4]
mov ecx, dword [eax + 4]
cmp ecx, ebx
je 0x53d861
cmp word [eax + 0x1c], 0xd
push ebx
push 1
je 0x53d759
mov edx, dword [ebp + 0xc]
mov eax, dword [esp + 0x48]
xor ecx, ecx
mov dword [esp + 0x6d], edx
lea edx, [esp + 0x48]
mov word [esp + 0x24], cx
mov ecx, dword [esp + 0x4c]
push edx
push edi
mov dword [esp + 0x28], ebx
mov dword [esp + 0x64], 1
mov byte [esp + 0x68], 2
mov dword [esp + 0x69], edi
mov dword [esp + 0x81], ebx
mov dword [esp + 0x6d], ebx
mov dword [esp + 0x71], ebx
mov dword [esp + 0x79], eax
mov dword [esp + 0x7d], ecx
call fcn.00423900
mov esi, eax
add esp, 0x10
cmp esi, ebx
jne 0x53dcbd
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
lea eax, [esp + 0x54]
call fcn.0053ce10
mov esi, eax
test esi, esi
jne 0x53dcbd
mov eax, dword [esp + 0x59]
lea ecx, [esp + 0x40]
push ecx
push 2
lea edx, [esp + 0x20]
push edx
push eax
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov edx, dword [esp + 0x61]
mov ecx, dword [esp + 0x5d]
add dword [esp + 0x2c], edx
jmp 0x53d85b
mov eax, dword [esi + edx]
cmp eax, ebx
je 0x53d763
push eax
jmp 0x53d767
add ecx, 0xc
push ecx
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
cmp esi, ebx
jne 0x53dcbd
mov eax, dword [esp + 0x10]
push 0
push 0x12
push eax
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 2]
mov ecx, dword [ecx + 6]
mov dword [esp + 0x50], eax
mov dword [esp + 0x38], ecx
test eax, eax
jle 0x53d853
lea edx, [esp + 0xa0]
push edx
push 2
lea eax, [esp + 0x20]
push eax
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov dword [esp + 0x3c], eax
mov eax, 0x51eb851f
imul dword [esp + 0x38]
sar edx, 5
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
test ebx, ebx
jle 0x53d822
lea ecx, [ecx]
mov ecx, dword [esp + 0x10]
push 0x64
push ecx
lea edx, [esp + 0x48]
push edx
lea eax, [esp + 0xac]
call fcn.00539770
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x53dcbd
mov eax, dword [esp + 0x3c]
inc eax
cmp eax, ebx
mov dword [esp + 0x3c], eax
jl 0x53d7f0
mov eax, dword [esp + 0x38]
imul ebx, ebx, 0x64
mov ecx, dword [esp + 0x10]
sub eax, ebx
push eax
push ecx
lea edx, [esp + 0x48]
push edx
lea eax, [esp + 0xac]
call fcn.00539770
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x53dcbd
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x38]
add dword [esp + 0x2c], eax
add dword [esp + 0x24], ecx
xor ebx, ebx
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x28]
inc eax
add edx, 4
cmp eax, dword [ebp + 0x10]
mov dword [esp + 0x30], eax
mov dword [esp + 0x28], edx
jl 0x53d690
push ebx
push 1
lea edx, [esp + 0xb0]
push edx
push edi
mov dword [esp + 0x1c], ebx
call fcn.00423900
mov esi, eax
add esp, 0x10
cmp esi, ebx
jne 0x53dcbd
push 0
push 4
lea eax, [esp + 0x14]
push eax
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 4
lea ecx, [esp + 0x14]
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 1
lea edx, [esp + 0xb0]
push edx
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov eax, dword [esp + 0x2c]
push esi
push 4
lea ecx, [esp + 0x14]
push ecx
push edi
mov dword [esp + 0x1c], eax
call fcn.00423e80
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov ebx, dword [esp + 0x24]
push eax
push 4
lea edx, [esp + 0x14]
push edx
push edi
mov dword [esp + 0x1c], ebx
call fcn.00423e80
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
mov dword [esp + 0x10], eax
push 1
lea eax, [esp + 0xa0]
push eax
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 4
lea ecx, [esp + 0x14]
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 1
lea edx, [esp + 0xa0]
push edx
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
movsx eax, byte [esp + 0x17]
neg eax
sbb eax, eax
and eax, dword [esp + 0x48]
push esi
push 4
lea ecx, [esp + 0x14]
push ecx
add ebx, eax
add dword [esp + 0x18], ebx
push edi
call fcn.00423e80
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
cmp byte [esp + 0x23], 1
jne 0x53db77
push eax
push 1
lea edx, [esp + 0x98]
push edx
push edi
mov dword [esp + 0x1c], eax
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 4
lea eax, [esp + 0x14]
push eax
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 1
lea ecx, [esp + 0x98]
push ecx
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
add dword [esp + 0xc], ebx
push eax
push 4
lea edx, [esp + 0x14]
push edx
push edi
call fcn.00423e80
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
mov dword [esp + 0x10], eax
push 1
lea eax, [esp + 0x80]
push eax
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 4
lea ecx, [esp + 0x14]
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 4
lea edx, [esp + 0x14]
push edx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 1
lea eax, [esp + 0x80]
push eax
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 4
lea ecx, [esp + 0x3c]
push ecx
push edi
mov dword [esp + 0x44], eax
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
add dword [esp + 0xc], ebx
push eax
push 4
lea edx, [esp + 0x14]
push edx
push edi
call fcn.00423e80
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
mov dword [esp + 0x10], eax
push 1
lea eax, [esp + 0xb8]
push eax
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 4
lea ecx, [esp + 0x14]
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 1
lea edx, [esp + 0xb8]
push edx
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
add dword [esp + 0xc], ebx
push eax
push 4
lea eax, [esp + 0x14]
push eax
push edi
call fcn.00423e80
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push 0
push 1
lea ecx, [esp + 0x88]
push ecx
push edi
mov dword [esp + 0x1c], 0
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 4
lea edx, [esp + 0x14]
push edx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 1
lea eax, [esp + 0x88]
push eax
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
add dword [esp + 0xc], ebx
push eax
push 4
lea ecx, [esp + 0x14]
push ecx
push edi
call fcn.00423e80
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 1
lea edx, [esp + 0x90]
push edx
push edi
mov dword [esp + 0x1c], eax
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 4
lea eax, [esp + 0x14]
push eax
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 4
lea ecx, [esp + 0x14]
push ecx
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
push 1
lea edx, [esp + 0x90]
push edx
push edi
call fcn.00423900
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
push eax
mov dword [esp + 0x38], eax
push 4
lea eax, [esp + 0x3c]
push eax
push edi
call fcn.00423d00
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
add dword [esp + 0xc], ebx
push eax
push 4
lea ecx, [esp + 0x14]
push ecx
push edi
call fcn.00423e80
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x53dcbd
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [ebp + 8]
add edx, 0x12
push ecx
mov dword [eax], edx
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esp + 0x10]
push edx
call dword [sym.imp.MSVCR90.dll_free]
push 0x2034
push 0
call fcn.00406f10
add esp, 0xc
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret