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

Disassembly:
mov eax, 0x4a7882
call fcn.004a0150
sub esp, 0x12c
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov esi, ecx
xor edi, edi
lea ecx, [ebx + 0x68]
mov dword [ebx + 0x9c], edi
call fcn.0045e024
and byte [ebx + 0xb3], 0
and byte [ebx + 0xb4], 0
and byte [ebx + 0xb5], 0
and byte [ebx + 0xb6], 0
and byte [ebx + 0xa8], 0
and byte [ebx + 0xa9], 0
and byte [ebx + 0xaa], 0
and byte [ebx + 0xab], 0
and byte [ebx + 0xac], 0
and byte [ebx + 0xad], 0
and byte [ebx + 0xae], 0
and byte [ebx + 0xaf], 0
lea eax, [ebx + 0xd0]
mov dword [ebx + 0xc0], edi
mov dword [ebx + 0xc8], edi
mov dword [ebx + 0xc4], edi
mov dword [ebx + 0xcc], edi
mov ecx, dword [eax]
mov dword [eax + 4], edi
and byte [ecx], 0
mov dword [eax + 0x10], edi
mov eax, dword [eax + 0xc]
and byte [eax], 0
lea eax, [ebx + 0xe8]
mov byte [eax], 1
and byte [eax + 4], 0
and byte [eax + 5], 0
and byte [eax + 6], 0
and byte [eax + 7], 0
and byte [eax + 8], 0
mov dword [eax + 0xc], edi
and byte [esi + 0x74], 0
and byte [esi + 0x75], 0
lea eax, [esi + 0x78]
mov dword [esi + 0x70], edi
and byte [eax + 0xc], 0
and byte [eax + 0xd], 0
mov dword [eax + 8], edi
and byte [esi + 0x94], 0
and byte [esi + 0x95], 0
lea eax, [esi + 0x88]
mov dword [ebp - 0x18], eax
mov dword [eax + 8], edi
and byte [esi + 0xa4], 0
and byte [esi + 0xa5], 0
lea eax, [esi + 0x98]
mov dword [eax + 8], edi
cmp dword [esi + 0x34], edi
je 0x45e291
push edi
push edi
push ebx
mov ecx, esi
call fcn.0045da33
cmp eax, edi
jne 0x45e66c
push ebx
mov ecx, esi
call fcn.0045d37c
cmp eax, edi
jne 0x45e66c
cmp byte [esi + 0x10], 0
jne 0x45e2d7
cmp dword [esi + 0x14], edi
jne 0x45e66a
cmp byte [ebx + 0xb3], 0
jne 0x45e2d0
cmp byte [ebx + 0xb5], 0
jne 0x45e2d0
mov eax, dword [ebx + 0xc8]
or eax, dword [ebx + 0xcc]
je 0x45e2d7
mov dword [esi + 0x14], 1
cmp dword [esi + 0x14], edi
jne 0x45e66a
mov al, byte [ebx + 0x18]
cmp al, 0x4c
mov byte [ebp - 0xd], al
je 0x45e452
cmp al, 0x4b
je 0x45e457
cmp al, 0x67
je 0x45e306
cmp al, 0x78
je 0x45e306
cmp al, 0x58
jne 0x45e50a
cmp dword [ebx + 0xc0], 0x200
jne 0x45e320
cmp dword [ebx + 0xc4], edi
jne 0x45e320
mov byte [ebp + 0xb], 1
jmp 0x45e324
and byte [ebp + 0xb], 0
cmp al, 0x67
lea eax, [esi + 0x98]
je 0x45e331
mov eax, dword [ebp - 0x18]
push 0x4000000
push eax
push ebx
mov ecx, esi
mov dword [ebp - 0x14], eax
call fcn.0045dabf
cmp eax, edi
jne 0x45e66c
cmp dword [esi + 0x14], edi
jne 0x45e66a
mov eax, dword [ebx]
mov ecx, dword [ebx + 4]
mov edx, eax
add edx, 0x1ff
adc ecx, edi
and dx, 0xfe00
add dword [ebx + 0xc0], edx
adc dword [ebx + 0xc4], ecx
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ecx + 8]
cmp ecx, eax
jne 0x45e38f
cmp edi, dword [ebx + 4]
jne 0x45e38f
cmp ecx, edi
je 0x45e38f
mov eax, dword [ebp - 0x14]
cmp byte [eax + 0xc], 0
je 0x45e396
mov byte [ebx + 0xab], 1
add dword [ebx + 0xc8], 1
adc dword [ebx + 0xcc], edi
cmp byte [ebp - 0xd], 0x67
je 0x45e3bd
lea eax, [ebx + 0x30]
lea ecx, [ebx + 0xd0]
push eax
call fcn.0040280f
jmp 0x45e27a
cmp byte [esi + 2], 0
je 0x45e3c7
mov byte [esi + 3], 1
lea ecx, [ebp - 0x138]
call fcn.0045e69e
lea eax, [esi + 0x98]
push edi
push eax
lea ecx, [ebp - 0x138]
mov dword [ebp - 4], edi
call fcn.0045dc75
test al, al
je 0x45e40d
lea eax, [ebp - 0xb8]
lea ecx, [esi + 0x5c]
push eax
call fcn.0040280f
lea eax, [ebx + 0x30]
lea ecx, [esi + 0x50]
push eax
call fcn.0040280f
mov byte [esi + 2], 1
jmp 0x45e411
mov byte [esi + 3], 1
cmp byte [ebp + 0xb], 0
je 0x45e43e
mov ecx, dword [ebx + 0xc0]
mov edx, dword [ebx + 0xc4]
add dword [ebx + 0xb8], ecx
lea eax, [ebx + 0xb8]
mov dword [ebx + 0xc0], edi
mov dword [ebx + 0xc4], edi
adc dword [eax + 4], edx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x138]
call fcn.0045e6fe
jmp 0x45e27a
lea eax, [esi + 0x68]
jmp 0x45e45a
lea eax, [esi + 0x78]
push 0x4000
push eax
push ebx
mov ecx, esi
mov dword [ebp + 8], eax
call fcn.0045dabf
cmp eax, edi
jne 0x45e66c
cmp dword [esi + 0x14], edi
jne 0x45e66a
cmp byte [ebp - 0xd], 0x4c
jne 0x45e497
mov al, byte [ebx + 0xb3]
mov byte [ebx + 0xb3], 1
mov byte [ebx + 0xb4], al
jmp 0x45e4aa
mov al, byte [ebx + 0xb5]
mov byte [ebx + 0xb5], 1
mov byte [ebx + 0xb6], al
mov eax, dword [ebp + 8]
cmp byte [eax + 0xd], 0
jne 0x45e4b6
mov dword [eax + 8], edi
mov ecx, dword [ebx]
mov eax, dword [ebx + 4]
mov edx, ecx
add edx, 0x1ff
adc eax, edi
and dx, 0xfe00
add dword [ebx + 0xc0], edx
adc dword [ebx + 0xc4], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
cmp eax, edi
je 0x45e4ea
inc eax
cmp eax, ecx
jne 0x45e4ea
cmp edi, dword [ebx + 4]
je 0x45e4f1
mov byte [ebx + 0xa8], 1
mov eax, dword [ebp + 8]
cmp byte [eax + 0xc], 0
je 0x45e27a
mov byte [ebx + 0xa8], 1
jmp 0x45e27a
cmp byte [ebx + 0xb3], 0
je 0x45e524
cmp dword [esi + 0x70], edi
je 0x45e524
lea eax, [ebx + 0x30]
lea ecx, [esi + 0x68]
push eax
call fcn.0045e67d
cmp byte [ebx + 0xb5], 0
je 0x45e539
lea eax, [ebx + 0x3c]
lea ecx, [esi + 0x78]
push eax
call fcn.0045e67d
cmp dword [esi + 0x90], edi
mov dword [esi + 0x14], edi
je 0x45e66a
lea ecx, [ebp - 0xa8]
call fcn.0045e69e
push 1
lea ecx, [ebp - 0xa8]
pop eax
push eax
mov dword [ebp - 4], eax
push dword [ebp - 0x18]
call fcn.0045dc75
test al, al
je 0x45e654
cmp byte [ebp - 0x72], 0
je 0x45e589
lea eax, [ebp - 0x58]
lea ecx, [ebx + 0x30]
push eax
call fcn.0040280f
mov byte [ebx + 0xad], 1
cmp byte [ebp - 0x71], 0
je 0x45e5a2
lea eax, [ebp - 0x4c]
lea ecx, [ebx + 0x3c]
push eax
call fcn.0040280f
mov byte [ebx + 0xae], 1
cmp byte [ebp - 0x70], 0
je 0x45e5b4
lea eax, [ebp - 0x40]
lea ecx, [ebx + 0x48]
push eax
call fcn.0040280f
cmp byte [ebp - 0x6f], 0
je 0x45e5c6
lea eax, [ebp - 0x34]
lea ecx, [ebx + 0x54]
push eax
call fcn.0040280f
cmp byte [ebp - 0x74], 0
je 0x45e5d2
mov eax, dword [ebp - 0x60]
mov dword [ebx + 0x20], eax
cmp byte [ebp - 0x73], 0
je 0x45e5de
mov eax, dword [ebp - 0x5c]
mov dword [ebx + 0x24], eax
cmp byte [ebp - 0x75], 0
je 0x45e617
mov eax, dword [ebx + 8]
mov esi, dword [ebx + 0xc]
mov edx, dword [ebp - 0x68]
mov ecx, eax
or ecx, esi
mov ecx, dword [ebp - 0x64]
je 0x45e605
cmp eax, edx
jne 0x45e5fe
cmp esi, ecx
je 0x45e605
mov byte [ebx + 0xab], 1
mov dword [ebx + 8], edx
mov dword [ebx], edx
mov dword [ebx + 0xc], ecx
mov dword [ebx + 4], ecx
mov byte [ebx + 0xaf], 1
push 0xc
lea esi, [ebp - 0xa8]
pop ecx
lea edi, [ebx + 0x68]
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x28]
lea ecx, [ebx + 0xdc]
push eax
call fcn.0040280f
cmp byte [ebp - 0x76], 0
je 0x45e641
mov byte [ebx + 0xac], 1
cmp byte [ebp - 0x77], 0
je 0x45e64e
mov byte [ebx + 0xab], 1
cmp byte [ebp - 0x78], 0
je 0x45e65b
mov byte [ebx + 0xab], 1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xa8]
call fcn.0045e6fe
xor eax, eax
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 4