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

Disassembly:
push 0xffffffffffffffff
push 0x518000
mov eax, dword fs:[0]
push eax
sub esp, 0x28
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x20], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [section..data]
xor eax, esp
push eax
lea eax, [esp + 0x3c]
mov dword fs:[0], eax
mov ebx, dword [esp + 0x4c]
xorps xmm0, xmm0
movq qword [esp + 0x28], xmm0
mov dword [esp + 0x30], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x44], 0
movq qword [esp + 0x1c], xmm0
mov dword [esp + 0x24], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
mov byte [esp + 0x44], 1
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x2c]
push eax
call fcn.004753b0
push dword [esp + 0x18]
mov edx, dword [ebx + 4]
push ecx
mov ecx, dword [ebx]
call fcn.0040a710
mov eax, dword [ebx]
add esp, 8
mov ecx, dword [esp + 0x2c]
mov esi, dword [esp + 0x28]
sub ecx, esi
mov dword [ebx + 4], eax
mov eax, 0x81848da9
imul ecx
add edx, ecx
sar edx, 9
mov edi, edx
shr edi, 0x1f
add edi, edx
je 0x475761
add esi, 0x78
lea ebx, [ebx]
push esi
mov ecx, ebx
call fcn.0041bd30
add esi, 0x3f4
dec edi
jne 0x475750
mov ecx, dword [esp + 0x20]
mov eax, 0x92492493
mov esi, dword [esp + 0x1c]
sub ecx, esi
imul ecx
add edx, ecx
sar edx, 5
mov edi, edx
shr edi, 0x1f
add edi, edx
je 0x475791
add esi, 0x18
push esi
mov ecx, ebx
call fcn.0041bd30
add esi, 0x38
dec edi
jne 0x475783
mov ecx, dword [ebx]
mov esi, dword [ebx + 4]
mov ebp, dword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void__]
cmp ecx, esi
je 0x4758de
mov edx, esi
mov byte [esp + 0x18], 0
push dword [esp + 0x18]
sub edx, ecx
mov eax, 0x2aaaaaab
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, esi
push eax
call fcn.004692a0
mov edx, dword [ebx + 4]
mov ecx, dword [ebx]
mov byte [esp + 0x20], 0
push dword [esp + 0x20]
call fcn.004693e0
mov ecx, eax
add esp, 0xc
sub ecx, dword [ebx]
mov eax, 0x2aaaaaab
imul ecx
mov ecx, ebx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
call fcn.00467380
mov esi, dword [ebx]
cmp esi, dword [ebx + 4]
je 0x4758de
mov ebp, dword [esi + 0x10]
test ebp, ebp
je 0x47587c
cmp dword [esi + 0x14], 8
jb 0x475819
mov ecx, dword [esi]
jmp 0x47581b
mov ecx, esi
mov edi, 0xc
cmp ebp, edi
cmovb edi, ebp
test edi, edi
je 0x475841
mov edx, str.000000000000
mov edi, edi
mov ax, word [ecx]
cmp ax, word [edx]
jne 0x475851
add ecx, 2
add edx, 2
dec edi
jne 0x475830
xor eax, eax
test eax, eax
jne 0x475869
cmp ebp, 0xc
jae 0x47585f
or eax, 0xffffffff
jmp 0x475867
movzx eax, word [ecx]
cmp ax, word [edx]
sbb eax, eax
and eax, 0xfffffffe
inc eax
jmp 0x475843
xor eax, eax
cmp ebp, 0xc
setne al
test eax, eax
sete al
test al, al
jne 0x47587c
mov ecx, esi
call fcn.0042fdc0
add esi, 0x18
jmp 0x4758cf
push dword [esp + 0x18]
mov edx, dword [ebx + 4]
lea ecx, [esi + 0x18]
push esi
call fcn.00468b90
mov ebp, dword [ebx + 4]
add esp, 8
lea edi, [ebp - 0x18]
cmp edi, ebp
je 0x4758cb
lea esp, [esp]
cmp dword [edi + 0x14], 8
jb 0x4758b1
push dword [edi]
call dword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void__]
add esp, 4
xor eax, eax
mov dword [edi + 0x14], 7
mov dword [edi + 0x10], 0
mov word [edi], ax
add edi, 0x18
cmp edi, ebp
jne 0x4758a0
add dword [ebx + 4], 0xffffffe8
cmp esi, dword [ebx + 4]
jne 0x475808
mov ebp, dword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void__]
mov byte [esp + 0x44], 0
mov ebx, dword [esp + 0x1c]
test ebx, ebx
je 0x475919
push dword [esp + 0x18]
mov edx, dword [esp + 0x24]
push ecx
mov ecx, ebx
call fcn.00468d40
push ebx
call ebp
add esp, 0xc
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x44], 0xffffffff
mov ebx, dword [esp + 0x28]
test ebx, ebx
je 0x475962
mov edi, dword [esp + 0x2c]
mov esi, ebx
cmp ebx, edi
je 0x475944
mov ecx, esi
call fcn.0046d810
add esi, 0x3f4
cmp esi, edi
jne 0x475933
push ebx
call ebp
add esp, 4
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
mov ecx, dword [esp + 0x3c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.00505b1e
add esp, 0x34
ret 4