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

Disassembly:
push 0xffffffffffffffff
push 0x604231
mov eax, dword fs:[0]
push eax
sub esp, 0x50
mov eax, dword [0x7664f8]
xor eax, esp
mov dword [esp + 0x4c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x7664f8]
xor eax, esp
push eax
lea eax, [esp + 0x64]
mov dword fs:[0], eax
mov ebx, ecx
mov ecx, dword [esp + 0x74]
mov eax, 0xf
xor edi, edi
mov dword [esp + 0x14], ebx
mov dword [esp + 0x5c], eax
mov dword [esp + 0x58], edi
mov byte [esp + 0x48], 0
mov dword [esp + 0x40], eax
mov eax, ecx
mov dword [esp + 0x6c], edi
mov dword [esp + 0x3c], edi
mov byte [esp + 0x2c], 0
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x51daf6
sub eax, esi
push eax
push ecx
lea ecx, [esp + 0x30]
call fcn.00402a80
push 0xffffffffffffffff
push edi
lea eax, [esp + 0x30]
push eax
lea ecx, [esp + 0x50]
mov byte [esp + 0x78], 1
call fcn.00402950
cmp dword [esp + 0x40], 0x10
mov byte [esp + 0x6c], 0
jb 0x51db39
mov ecx, dword [esp + 0x2c]
push ecx
call fcn.0055c72e
add esp, 4
mov esi, dword [ebx + 0xb8]
mov edi, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
add edx, edi
cmp edi, edx
jbe 0x51db50
call fcn.0055cb74
mov ebp, dword [esi]
mov dword [esp + 0x18], ebp
mov ebx, edi
mov eax, dword [esp + 0x14]
mov esi, dword [eax + 0xb8]
mov eax, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
add edi, eax
mov dword [esp + 0x1c], ebx
cmp eax, edi
jbe 0x51db77
call fcn.0055cb74
mov esi, dword [esi]
test ebp, ebp
je 0x51db81
cmp ebp, esi
je 0x51db86
call fcn.0055cb74
cmp ebx, edi
je 0x51dcfe
lea ecx, [esp + 0x18]
call fcn.0051b360
cmp dword [esp + 0x5c], 0x10
mov edx, dword [esp + 0x48]
jae 0x51dba6
lea edx, [esp + 0x48]
mov esi, dword [eax + 0x14]
mov ecx, esi
cmp ecx, esi
jae 0x51dbaf
mov edi, dword [esp + 0x58]
mov ecx, esi
cmp esi, edi
jb 0x51dbbb
mov ecx, edi
cmp dword [eax + 0x18], 0x10
jb 0x51dbc6
mov eax, dword [eax + 4]
jmp 0x51dbc9
add eax, 4
push ecx
push edx
push eax
call fcn.0040e940
add esp, 0xc
test eax, eax
jne 0x51dbe5
cmp esi, edi
jb 0x51dbe5
cmp esi, edi
setne al
test eax, eax
je 0x51dc0e
test ebp, ebp
jne 0x51dc07
call fcn.0055cb74
xor ecx, ecx
xor eax, eax
mov edx, dword [eax + 0x1c]
add edx, dword [ecx + 0x18]
cmp ebx, edx
jb 0x51dc01
call fcn.0055cb74
inc ebx
jmp 0x51db58
mov ecx, dword [ebp]
mov eax, ecx
jmp 0x51dbf2
mov eax, dword [esp + 0x14]
mov edi, dword [eax + 0xb8]
mov dword [esp + 0x24], ebx
test ebp, ebp
jne 0x51dc3f
call fcn.0055cb74
xor eax, eax
xor ecx, ecx
mov ecx, dword [ecx + 0x1c]
add ecx, dword [eax + 0x18]
lea esi, [ebx + 1]
cmp esi, ecx
ja 0x51dc4d
test ebp, ebp
je 0x51dc46
mov eax, dword [ebp]
jmp 0x51dc48
mov eax, dword [ebp]
mov ecx, eax
jmp 0x51dc29
xor eax, eax
cmp esi, dword [eax + 0x18]
jae 0x51dc56
call fcn.0055cb74
mov ebx, dword [esp + 0x1c]
push esi
push ebp
push ebx
push ebp
lea edx, [esp + 0x30]
push edx
mov ecx, edi
call fcn.0051d720
mov eax, dword [esp + 0x14]
mov esi, dword [eax + 0xb8]
mov ecx, dword [esi + 0x1c]
inc ecx
cmp dword [esi + 0x14], ecx
ja 0x51dc82
push 1
mov ecx, esi
call fcn.0051c5c0
mov edi, dword [esi + 0x18]
test edi, edi
jne 0x51dc8c
mov edi, dword [esi + 0x14]
mov edx, dword [esi + 0x10]
dec edi
cmp dword [edx + edi*4], 0
jne 0x51dca6
push 0x1c
call fcn.0055c754
mov ecx, dword [esi + 0x10]
add esp, 4
mov dword [ecx + edi*4], eax
mov edx, dword [esi + 0x10]
mov ecx, dword [edx + edi*4]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ecx
mov byte [esp + 0x6c], 2
test ecx, ecx
je 0x51dcdd
push 0xffffffffffffffff
push 0
lea eax, [esp + 0x4c]
mov dword [ecx + 0x18], 0xf
mov dword [ecx + 0x14], 0
push eax
mov byte [ecx + 4], 0
call fcn.00402950
inc dword [esi + 0x1c]
mov dword [esi + 0x18], edi
cmp dword [esp + 0x5c], 0x10
jb 0x51dcf7
mov ecx, dword [esp + 0x48]
push ecx
call fcn.0055c72e
add esp, 4
mov eax, 1
jmp 0x51dd14
cmp dword [esp + 0x5c], 0x10
jb 0x51dd12
mov edx, dword [esp + 0x48]
push edx
call fcn.0055c72e
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x64]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x4c]
xor ecx, esp
call fcn.0055c6a2
add esp, 0x5c
ret 4