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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x58
mov ebp, dword [esp + 0x70]
mov edi, dword [esp + 0x6c]
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 4
mov dword [esp + 0x20], 0
mov dword [esp + 0x30], ecx
mov dword [esp + 0x14], edx
mov dword [edx + 0xc], 2
mov dword [esp + 0x24], 0
cmp edi, ebp
je 0x445b13
mov eax, dword [esp + 0x14]
mov dword [esp + 0x10], 2
mov bl, byte [eax + 0x15]
mov esi, edi
test bl, bl
jne 0x44596b
jmp 0x4459bb
add esi, 0x78
cmp esi, ebp
je 0x445b13
push 4
push esi
call fcn.0043ada0
add esp, 8
test al, al
jne 0x445960
push 0x11
push esi
call fcn.0043ada0
add esp, 8
test al, al
je 0x445a00
push 0x10
push esi
call fcn.0043ada0
add esp, 8
push 7
push esi
call fcn.0043ada0
add esp, 8
test al, al
je 0x445960
jmp 0x445a00
add esi, 0x78
cmp esi, ebp
je 0x445b13
push 4
push esi
call fcn.0043ada0
add esp, 8
test al, al
jne 0x4459b0
push 0x11
push esi
call fcn.0043ada0
add esp, 8
push 0x10
push esi
call fcn.0043ada0
add esp, 8
test al, al
je 0x445a00
push 7
push esi
call fcn.0043ada0
add esp, 8
test al, al
je 0x4459b0
nop word cs:[eax + eax]
nop dword [eax]
lea edi, [esi + 0x78]
push esi
call fcn.0043ae20
add esp, 4
test al, al
je 0x445a9a
mov dword [esp + 4], 1
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
push 0x4adb24
lea eax, [esp + 8]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.004775e0
add esp, 0xc
lea eax, [esp + 0x34]
push eax
push esi
call fcn.0043ac60
add esp, 8
test al, al
jne 0x445d95
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xc]
add ecx, eax
push 0
push ecx
push eax
call fcn.004340d0
add esp, 0xc
mov ecx, dword [esp + 0x10]
cmp ecx, eax
cmovbe ecx, eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x10], ecx
mov dword [eax + 0xc], ecx
mov eax, dword [esp + 8]
test eax, eax
je 0x445a9a
push 1
push eax
push dword [esp + 0xc]
call fcn.00406c80
add esp, 0xc
mov byte [esp], bl
push esi
call fcn.0043aeb0
add esp, 4
xor ecx, ecx
cmp dword [esp + 0x24], eax
jbe 0x445aba
mov ecx, dword [esp + 0x1c]
mov edx, eax
shl edx, 4
mov ecx, dword [ecx + edx]
lea edx, [esp + 0x18]
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
lea eax, [esp + 0x34]
mov dword [esp + 4], ecx
push eax
lea eax, [esp + 8]
push eax
call fcn.0042e110
add esp, 8
mov ebx, eax
push esi
call fcn.0043ad10
add esp, 4
push 0x4adc90
push esi
push edx
push eax
push ebx
call fcn.00434ea0
add esp, 0x14
mov bl, byte [esp]
cmp edi, ebp
jne 0x445955
mov eax, dword [esp + 0x24]
test eax, eax
mov dword [esp + 0x2c], eax
je 0x445cdd
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x1c]
xor edi, edi
mov ebx, eax
mov edx, eax
mov al, 1
shl ebx, 4
neg edx
mov dword [esp + 0x10], eax
add ebx, esi
cmp esi, ebx
je 0x445cdd
inc edi
mov ecx, esi
jmp 0x445b62
mov esi, ebx
lea eax, [edx + edi + 1]
inc edi
mov ecx, esi
cmp eax, 1
je 0x445cdd
cmp ecx, ebx
je 0x445b50
cmp dword [ecx], 0
lea esi, [ecx + 0x10]
je 0x445b52
mov ebp, dword [ecx + 8]
mov dword [esp], edx
mov edx, dword [ecx + 4]
mov ecx, dword [ecx + 0xc]
xor eax, eax
test ebp, ebp
sete al
add eax, eax
test ebp, ebp
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], edx
mov dword [esp + 0x4c], ebp
je 0x445cd0
test ecx, ecx
je 0x445cd0
nop dword [eax + eax]
dec ecx
test eax, eax
mov dword [esp + 0x54], ecx
je 0x445bd0
cmp eax, 2
jne 0x445c05
jmp 0x445d7f
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
test ecx, ecx
je 0x445be9
nop dword [eax]
mov eax, dword [eax + 0xb8]
dec ecx
jne 0x445be0
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], 0
mov dword [esp + 0x34], 1
lea eax, [esp + 0x38]
push eax
call fcn.00454ca0
add esp, 4
test eax, eax
je 0x445cd0
test byte [esp + 0x10], 1
mov ebp, edx
jne 0x445c60
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 4]
push 1
push 0x4adeb0
push dword [ecx]
lea ecx, [esp + 0x10]
push ecx
call dword [eax + 0x1c]
add esp, 0x10
cmp byte [esp + 4], 4
je 0x445c68
mov eax, dword [esp + 4]
cmp al, 4
je 0x445c68
jmp 0x445d19
mov dword [esp + 0x10], 0
mov eax, dword [ebp + 4]
push dword [ebp]
call dword [eax + 0x84]
add esp, 4
mov ebp, edx
mov edx, dword [esp + 0x14]
lea ecx, [esp + 4]
push ebp
push eax
call fcn.00445dd0
add esp, 8
cmp byte [esp + 4], 4
jne 0x445ca0
mov edx, dword [esp]
jmp 0x445cab
mov eax, dword [esp + 4]
mov edx, dword [esp]
cmp al, 4
jne 0x445d19
mov ecx, dword [esp + 0x54]
test ecx, ecx
je 0x445cd3
mov eax, dword [esp + 0x34]
dec ecx
test eax, eax
mov dword [esp + 0x54], ecx
jne 0x445bb9
jmp 0x445bd0
mov edx, dword [esp]
cmp edi, dword [esp + 0x2c]
jb 0x445b3e
mov esi, dword [esp + 0x24]
mov eax, dword [esp + 0x30]
test esi, esi
mov byte [eax], 4
je 0x445d59
mov edi, dword [esp + 0x1c]
shl esi, 4
add edi, 4
jmp 0x445d08
add edi, 0x10
add esi, 0xfffffff0
je 0x445d59
cmp dword [edi - 4], 0
je 0x445d00
push edi
call fcn.004353d0
add esp, 4
jmp 0x445d00
mov esi, dword [esp + 0x24]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 8]
test esi, esi
mov dword [edx], eax
mov dword [edx + 4], ecx
je 0x445d59
mov edi, dword [esp + 0x1c]
shl esi, 4
add edi, 4
jmp 0x445d48
add edi, 0x10
add esi, 0xfffffff0
je 0x445d59
cmp dword [edi - 4], 0
je 0x445d40
push edi
call fcn.004353d0
add esp, 4
jmp 0x445d40
mov eax, dword [esp + 0x20]
test eax, eax
je 0x445d77
mov ecx, 0x10
mul ecx
push 4
push eax
push dword [esp + 0x24]
call fcn.00406c80
add esp, 0xc
add esp, 0x58
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x4ac9a4
push 0x2b
push 0x4ac907
call fcn.00480530
add esp, 0xc
ud2
lea eax, [esp + 0x28]
push 0x4adbc0
push 0x4adc50
push eax
push 0x37
push 0x4adb3c
call fcn.004806c0
add esp, 0x14
ud2