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

Disassembly:
sub esp, 0x40
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x44]
push ebx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x50]
mov ebx, dword [ecx + 8]
push edi
xor edi, edi
mov dword [esp + 8], ebx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x30], 0
mov dword [esp + 0x4c], edi
cmp dword [eax], edi
jle 0x45d9f8
push ebp
add eax, 8
lea ebp, [edi + 1]
push esi
mov dword [esp + 0x1c], eax
lea ecx, [esp + 0x18]
mov dword [esp + 0x58], 0
push ecx
lea ecx, [esp + 0x18]
mov dword [esp + 0x18], 0
push ecx
lea ecx, [esp + 0x60]
mov dword [esp + 0x20], 0
push ecx
push dword [eax]
lea eax, [esp + 0x3c]
push eax
call fcn.00450b80
mov ecx, dword [ebx]
add esp, 0x14
mov dword [esp + 0x20], eax
cmp byte [ecx + 0x57], 0
jne 0x45d760
movzx ecx, word [ebx + 0x92]
mov eax, dword [esp + 0x58]
lea ecx, [edi + ecx*2]
lea edx, [ecx + ecx*4]
mov ecx, dword [ebx + 0x74]
lea esi, [ecx + edx*8]
test eax, eax
jne 0x45d675
mov edx, 0x9000
test word [esi + 0x10], dx
je 0x45d66c
push esi
call fcn.004ce250
add esp, 4
jmp 0x45d760
mov word [esi + 0x10], bp
jmp 0x45d765
mov ecx, dword [esi + 0x14]
test ecx, ecx
je 0x45d681
mov edx, dword [ecx + 0x78]
jmp 0x45d686
mov edx, 0x3b9aca00
mov edi, eax
lea ebp, [edi + 1]
nop dword [eax + eax]
mov al, byte [edi]
inc edi
test al, al
jne 0x45d690
sub edi, ebp
mov eax, edx
xor ebp, ebp
cdq
cmp ebp, edx
jl 0x45d6f6
jg 0x45d6a8
cmp edi, eax
jbe 0x45d6f6
mov edx, 0x9000
test word [esi + 0x10], dx
je 0x45d6cb
push esi
call fcn.004ce250
mov ecx, dword [esi + 0x14]
add esp, 4
mov ebp, 1
mov edx, 0x9000
jmp 0x45d6d4
mov ebp, 1
mov word [esi + 0x10], bp
mov edi, dword [esp + 0x54]
test ecx, ecx
je 0x45d765
mov eax, dword [ecx + 0x10c]
test eax, eax
je 0x45d765
inc dword [eax + 0x24]
mov dword [eax + 0xc], 0x12
jmp 0x45d765
mov ebx, edi
add ebx, 1
adc ebp, ebp
jne 0x45d709
mov eax, 0x20
cmp ebx, 0x20
jbe 0x45d70b
mov eax, ebx
cmp dword [esi + 0x18], eax
jge 0x45d722
push 0
push eax
push esi
call fcn.004bbb70
add esp, 0xc
test eax, eax
jne 0x45d753
jmp 0x45d72d
mov eax, dword [esi + 0x20]
and word [esi + 0x10], 0x2d
mov dword [esi + 8], eax
push ebx
push dword [esp + 0x5c]
push dword [esi + 8]
call fcn.004e73f0
add esp, 0xc
mov byte [esi + 0x12], 1
and edi, 0x7fffffff
mov eax, 0x202
mov dword [esi + 0xc], edi
mov word [esi + 0x10], ax
mov ebx, dword [esp + 0x10]
mov ebp, 1
mov edi, dword [esp + 0x54]
mov edx, 0x9000
mov eax, dword [ebx]
cmp byte [eax + 0x57], 0
jne 0x45d876
movzx eax, word [ebx + 0x92]
lea ecx, [edi + eax*2]
add ecx, eax
mov eax, dword [ebx + 0x74]
lea ecx, [ecx + ecx*4]
lea esi, [eax + ecx*8]
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x45d7ab
test word [esi + 0x10], dx
je 0x45d7a2
push esi
call fcn.004ce250
add esp, 4
jmp 0x45d876
mov word [esi + 0x10], bp
jmp 0x45d876
mov ecx, dword [esi + 0x14]
test ecx, ecx
je 0x45d7b7
mov edx, dword [ecx + 0x78]
jmp 0x45d7bc
mov edx, 0x3b9aca00
mov edi, eax
lea ebp, [edi + 1]
mov al, byte [edi]
inc edi
test al, al
jne 0x45d7c1
sub edi, ebp
mov eax, edx
xor ebp, ebp
cdq
cmp ebp, edx
jl 0x45d815
jg 0x45d7d9
cmp edi, eax
jbe 0x45d815
mov ebp, 0x9000
test word [esi + 0x10], bp
je 0x45d7f2
push esi
call fcn.004ce250
mov ecx, dword [esi + 0x14]
add esp, 4
jmp 0x45d7fb
mov eax, 1
mov word [esi + 0x10], ax
test ecx, ecx
je 0x45d87b
mov eax, dword [ecx + 0x10c]
test eax, eax
je 0x45d87b
inc dword [eax + 0x24]
mov dword [eax + 0xc], 0x12
jmp 0x45d87b
mov ebx, edi
add ebx, 1
adc ebp, ebp
jne 0x45d828
mov eax, 0x20
cmp ebx, 0x20
jbe 0x45d82a
mov eax, ebx
cmp dword [esi + 0x18], eax
jge 0x45d841
push 0
push eax
push esi
call fcn.004bbb70
add esp, 0xc
test eax, eax
jne 0x45d872
jmp 0x45d84c
mov eax, dword [esi + 0x20]
and word [esi + 0x10], 0x2d
mov dword [esi + 8], eax
push ebx
push dword [esp + 0x18]
push dword [esi + 8]
call fcn.004e73f0
add esp, 0xc
mov byte [esi + 0x12], 1
and edi, 0x7fffffff
mov eax, 0x202
mov dword [esi + 0xc], edi
mov word [esi + 0x10], ax
mov ebx, dword [esp + 0x10]
mov ebp, 0x9000
mov eax, dword [ebx]
mov edi, dword [esp + 0x54]
cmp byte [eax + 0x57], 0
jne 0x45d9a6
movzx eax, word [ebx + 0x92]
lea eax, [edi + eax*4]
lea ecx, [eax + eax*4]
mov eax, dword [ebx + 0x74]
lea esi, [eax + ecx*8]
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x45d8c8
test word [esi + 0x10], bp
je 0x45d8ba
push esi
call fcn.004ce250
add esp, 4
jmp 0x45d9a6
mov ebp, 1
mov word [esi + 0x10], bp
jmp 0x45d9ab
mov ecx, dword [esi + 0x14]
test ecx, ecx
je 0x45d8d4
mov edx, dword [ecx + 0x78]
jmp 0x45d8d9
mov edx, 0x3b9aca00
mov edi, eax
lea ebp, [edi + 1]
nop
mov al, byte [edi]
inc edi
test al, al
jne 0x45d8e0
sub edi, ebp
mov eax, edx
xor ebp, ebp
cdq
cmp ebp, edx
jl 0x45d941
jg 0x45d8f8
cmp edi, eax
jbe 0x45d941
mov edx, 0x9000
test word [esi + 0x10], dx
je 0x45d916
push esi
call fcn.004ce250
mov ecx, dword [esi + 0x14]
add esp, 4
mov ebp, 1
jmp 0x45d91f
mov ebp, 1
mov word [esi + 0x10], bp
mov edi, dword [esp + 0x54]
test ecx, ecx
je 0x45d9ab
mov eax, dword [ecx + 0x10c]
test eax, eax
je 0x45d9ab
inc dword [eax + 0x24]
mov dword [eax + 0xc], 0x12
jmp 0x45d9ab
mov ebx, edi
add ebx, 1
adc ebp, ebp
jne 0x45d954
mov eax, 0x20
cmp ebx, 0x20
jbe 0x45d956
mov eax, ebx
cmp dword [esi + 0x18], eax
jge 0x45d96d
push 0
push eax
push esi
call fcn.004bbb70
add esp, 0xc
test eax, eax
jne 0x45d99e
jmp 0x45d978
mov eax, dword [esi + 0x20]
and word [esi + 0x10], 0x2d
mov dword [esi + 8], eax
push ebx
push dword [esp + 0x1c]
push dword [esi + 8]
call fcn.004e73f0
add esp, 0xc
mov byte [esi + 0x12], 1
and edi, 0x7fffffff
mov eax, 0x202
mov dword [esi + 0xc], edi
mov word [esi + 0x10], ax
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x54]
mov ebp, 1
mov eax, dword [ebx]
cmp byte [eax + 0x57], 0
jne 0x45d9da
movzx eax, word [ebx + 0x92]
add eax, edi
push 0xffffffffffffffff
push 1
push 0xffffffffffffffff
lea ecx, [eax + eax*4]
mov eax, dword [ebx + 0x74]
push 0xffffffffffffffff
push dword [esp + 0x30]
lea eax, [eax + ecx*8]
push eax
call fcn.004bc070
add esp, 0x18
mov ecx, dword [esp + 0x5c]
inc edi
mov eax, dword [esp + 0x1c]
add eax, 0x14
mov dword [esp + 0x54], edi
mov dword [esp + 0x1c], eax
cmp edi, dword [ecx]
jl 0x45d5f2
pop esi
pop ebp
pop edi
pop ebx
add esp, 0x40
ret