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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x55aa36
mov eax, dword fs:[0]
push eax
sub esp, 0xc8
mov eax, dword [0x5c04b4]
xor eax, esp
mov dword [esp + 0xc0], eax
push ebx
push esi
push edi
mov eax, dword [0x5c04b4]
xor eax, esp
push eax
lea eax, [esp + 0xd8]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x28], esi
mov eax, dword [ebp + 8]
mov ebx, dword [ebp + 0x20]
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 0x28]
mov dword [esp + 0x30], eax
mov eax, dword [ebp + 0x2c]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x2c], eax
mov byte [esp + 0x15], 1
mov byte [esp + 0x16], 0
test ebx, ebx
je 0x45c61c
mov ecx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45c260
sub ecx, edx
sar ecx, 1
je 0x45c61c
lea eax, [esi + 4]
mov dword [esp + 0x34], eax
mov ecx, dword [eax]
mov byte [esp + 0x38], 1
call fcn.004361d0
mov dword [esp + 0xe0], 0
lea eax, [esi + 8]
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov dword [esp + 0x1c], eax
cmp esi, edi
je 0x45c321
mov edx, dword [esp + 0x18]
mov al, byte [edx]
mov byte [esp + 0x17], al
test al, al
jne 0x45c2b9
xor ebx, ebx
jmp 0x45c2c9
mov ebx, edx
lea ecx, [ebx + 1]
mov edi, edi
mov al, byte [ebx]
inc ebx
test al, al
jne 0x45c2c0
sub ebx, ecx
mov eax, dword [esi + 0x10]
cmp eax, ebx
jb 0x45c2d2
mov eax, ebx
cmp dword [esi + 0x14], 0x10
jb 0x45c2dc
mov ecx, dword [esi]
jmp 0x45c2de
mov ecx, esi
push eax
call fcn.0041f6b0
add esp, 4
test eax, eax
jne 0x45c300
mov ecx, dword [esi + 0x10]
cmp ecx, ebx
jae 0x45c2f7
or eax, 0xffffffff
jmp 0x45c2fe
xor eax, eax
cmp ecx, ebx
setne al
test eax, eax
sete al
test al, al
jne 0x45c360
mov al, byte [esp + 0x17]
add esi, 0x90
mov edx, dword [esp + 0x18]
cmp esi, edi
jne 0x45c2b1
mov ebx, dword [esp + 0x24]
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x38e38e39
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 0x2710
jbe 0x45c46e
mov dword [esp + 0xe0], 0xffffffff
mov edi, dword [esp + 0x28]
mov ecx, dword [edi + 4]
call fcn.00436240
xor al, al
jmp 0x45c61e
mov eax, dword [ebp + 0xc]
cmp byte [esi + 0x1a], 0
mov edi, dword [esp + 0x24]
mov dword [esi + 0x1c], eax
sete byte [esp + 0x15]
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x20], eax
mov eax, dword [ebp + 0x14]
mov dword [esi + 0x24], eax
mov eax, dword [ebp + 0x18]
mov dword [esi + 0x28], eax
mov eax, dword [ebp + 0x1c]
mov byte [esi + 0x1a], 1
mov dword [esi + 0x2c], eax
cmp word [edi], 0
jne 0x45c399
xor ecx, ecx
jmp 0x45c3af
mov ecx, edi
lea edx, [ecx + 2]
mov edi, edi
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45c3a0
sub ecx, edx
sar ecx, 1
push ecx
push edi
lea ecx, [esi + 0x30]
call fcn.0041e3a0
mov ebx, dword [esp + 0x20]
test ebx, ebx
je 0x45c3e1
cmp word [ebx], 0
je 0x45c3e6
mov ecx, ebx
lea edx, [ecx + 2]
lea esp, [esp]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45c3d0
sub ecx, edx
sar ecx, 1
jmp 0x45c3e8
mov ebx, 0x574c4c
xor ecx, ecx
push ecx
push ebx
lea ecx, [esi + 0x48]
call fcn.0041e3a0
mov ebx, dword [esp + 0x30]
test ebx, ebx
je 0x45c416
cmp word [ebx], 0
je 0x45c41b
mov ecx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45c405
sub ecx, edx
sar ecx, 1
jmp 0x45c41d
mov ebx, 0x574c4c
xor ecx, ecx
push ecx
push ebx
lea ecx, [esi + 0x60]
call fcn.0041e3a0
mov ebx, dword [esp + 0x2c]
test ebx, ebx
je 0x45c451
cmp word [ebx], 0
je 0x45c456
mov ecx, ebx
lea edx, [ecx + 2]
lea ebx, [ebx]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45c440
sub ecx, edx
sar ecx, 1
jmp 0x45c458
mov ebx, 0x574c4c
xor ecx, ecx
push ecx
push ebx
lea ecx, [esi + 0x78]
call fcn.0041e3a0
mov bl, byte [esi + 0x1b]
mov esi, dword [esp + 0x18]
jmp 0x45c5c0
lea ecx, [esp + 0x3c]
call fcn.0045b700
mov byte [esp + 0xe0], 1
mov esi, dword [esp + 0x18]
cmp byte [esi], 0
jne 0x45c48c
xor ecx, ecx
jmp 0x45c49a
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45c491
sub ecx, edx
push ecx
push esi
lea ecx, [esp + 0x44]
call fcn.0041e000
cmp word [ebx], 0
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x58], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x5c], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x60], eax
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x64], eax
mov eax, dword [ebp + 0x1c]
mov byte [esp + 0x56], 1
mov dword [esp + 0x68], eax
jne 0x45c4d7
xor ecx, ecx
jmp 0x45c4ef
mov ecx, ebx
lea edx, [ecx + 2]
lea esp, [esp]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45c4e0
sub ecx, edx
sar ecx, 1
push ecx
push ebx
lea ecx, [esp + 0x74]
call fcn.0041e3a0
mov ebx, dword [esp + 0x20]
test ebx, ebx
je 0x45c52e
cmp word [ebx], 0
jne 0x45c50c
xor ecx, ecx
jmp 0x45c520
mov ecx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45c511
sub ecx, edx
sar ecx, 1
push ecx
push ebx
lea ecx, [esp + 0x8c]
call fcn.0041e3a0
mov ebx, dword [esp + 0x30]
test ebx, ebx
je 0x45c562
cmp word [ebx], 0
jne 0x45c540
xor ecx, ecx
jmp 0x45c554
mov ecx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45c545
sub ecx, edx
sar ecx, 1
push ecx
push ebx
lea ecx, [esp + 0xa4]
call fcn.0041e3a0
mov ebx, dword [esp + 0x2c]
test ebx, ebx
je 0x45c59d
cmp word [ebx], 0
jne 0x45c574
xor ecx, ecx
jmp 0x45c58f
mov ecx, ebx
lea edx, [ecx + 2]
lea esp, [esp]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45c580
sub ecx, edx
sar ecx, 1
push ecx
push ebx
lea ecx, [esp + 0xbc]
call fcn.0041e3a0
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x3c]
push eax
call fcn.0045e3d0
mov byte [esp + 0xe0], 0
lea ecx, [esp + 0x3c]
call fcn.0045b7d0
mov bl, byte [esp + 0x16]
mov dword [esp + 0xe0], 0xffffffff
mov edi, dword [esp + 0x28]
mov ecx, dword [edi + 4]
call fcn.00436240
mov bh, byte [esp + 0x15]
test bh, bh
je 0x45c618
test bl, bl
je 0x45c5f0
mov ecx, dword [edi + 0x20]
test ecx, ecx
je 0x45c5f0
push esi
call fcn.004c7b00
mov esi, dword [0x5c6138]
mov ecx, dword [esi + 0x1db0]
test ecx, ecx
je 0x45c607
mov eax, dword [ecx]
push 0x20
call dword [eax + 0x20]
mov ecx, dword [esi + 0x1db0]
test ecx, ecx
je 0x45c618
mov edx, dword [ecx]
push 4
call dword [edx + 0x20]
mov al, bh
jmp 0x45c61e
mov al, 1
mov ecx, dword [esp + 0xd8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xc0]
xor ecx, esp
call fcn.00553510
mov esp, ebp
pop ebp
ret 0x28