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

Disassembly:
sub esp, 0x14
push ebx
mov ebx, dword [0xb74490]
push ebp
mov ebp, dword [0xb74494]
mov edx, dword [ebp + 8]
push esi
xor ecx, ecx
test edx, edx
push edi
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], ebx
mov esi, 0x74
jle 0x45e375
xor edi, edi
jmp 0x45e330
mov eax, dword [ebp + 4]
test byte [eax + ecx], 0x80
jne case.0x45e351.7
mov eax, dword [ebp]
add eax, edi
je case.0x45e351.7
cmp dword [eax + 0x18], 0
je case.0x45e351.7
mov eax, dword [eax + 0x594]
cmp eax, 0xb
ja case.0x45e351.7
jmp dword [eax*4 + 0x45eb44]
add esi, 0x34
jmp case.0x45e351.7
add esi, 0x3c
jmp case.0x45e351.7
add esi, 0x38
jmp case.0x45e351.7
add esi, 0x4c
inc ecx
add edi, 0xa18
cmp ecx, edx
jl 0x45e330
mov eax, dword [ebx + 8]
xor edi, edi
test eax, eax
jle 0x45e3c1
xor ebp, ebp
mov eax, dword [ebx + 4]
cmp byte [edi + eax], 0
js 0x45e3b3
mov ecx, dword [ebx]
add ecx, ebp
je 0x45e3b3
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x45e3b3
mov eax, dword [ecx + 0x470]
test ah, 0x20
jne 0x45e3b0
add esi, 8
call fcn.005df8f0
test al, al
je 0x45e3b0
add esi, 0x78
add esi, 0x34
mov eax, dword [ebx + 8]
inc edi
add ebp, 0x7c4
cmp edi, eax
jl 0x45e380
mov eax, 0xc7c78c
mov cl, byte [eax - 0x2c]
test cl, cl
je 0x45e3d0
add esi, 0x1c
cmp byte [eax], 0
je 0x45e3d8
add esi, 0x1c
mov cl, byte [eax + 0x2c]
test cl, cl
je 0x45e3e2
add esi, 0x1c
mov cl, byte [eax + 0x58]
test cl, cl
je 0x45e3ec
add esi, 0x1c
mov cl, byte [eax + 0x84]
test cl, cl
je 0x45e3f9
add esi, 0x1c
mov cl, byte [eax + 0xb0]
test cl, cl
je 0x45e406
add esi, 0x1c
mov cl, byte [eax + 0xdc]
test cl, cl
je 0x45e413
add esi, 0x1c
mov cl, byte [eax + 0x108]
test cl, cl
je 0x45e420
add esi, 0x1c
add eax, 0x160
cmp eax, 0xc7ca4c
jl 0x45e3c6
mov eax, dword [0x97fb70]
lea ecx, [eax + esi + 0x14]
cmp ecx, 0x18690
jbe 0x45e498
mov edx, dword [0x97fb74]
mov byte [edx + eax], 0
movzx eax, byte [0x97fb78]
mov byte [eax + 0x97fb7c], 1
inc eax
and eax, 0x80000007
jns 0x45e462
dec eax
or eax, 0xfffffff8
inc eax
mov byte [0x97fb78], al
movzx eax, al
mov byte [eax + 0x97fb7c], 2
imul eax, eax, 0x186a0
add eax, 0x97fb88
mov dword [0x97fb74], eax
mov dword [0x97fb70], 0
mov byte [eax], 0
call fcn.0045d430
mov eax, dword [0x97fb70]
mov ecx, dword [0x97fb74]
lea esi, [ecx + eax]
push 0xb6f99c
lea ecx, [esi + 4]
mov byte [esi], 5
call fcn.0059add0
lea edx, [esp + 0x18]
push 0xffffffffffffffff
push edx
call fcn.0056e010
mov eax, dword [eax]
lea ecx, [esp + 0x20]
push 0xffffffffffffffff
push ecx
mov dword [esi + 0x4c], eax
call fcn.0056e010
mov edx, dword [eax + 4]
lea eax, [esp + 0x28]
push 0xffffffffffffffff
push eax
mov dword [esi + 0x50], edx
call fcn.0056e010
mov ecx, dword [eax + 8]
mov dword [esi + 0x54], ecx
movzx edx, byte [0xb7cd74]
imul edx, edx, 0x190
mov ebp, dword [edx + 0xb7ce48]
xor edi, edi
add esp, 0x18
cmp ebp, edi
setne al
mov byte [esi + 1], al
mov eax, dword [0x97fb70]
mov ecx, dword [0x97fb74]
add eax, 0x58
mov dword [0x97fb70], eax
mov byte [eax + ecx], 6
mov dl, byte [0xb70153]
add eax, ecx
mov byte [eax + 1], dl
mov cl, byte [0xb70152]
mov byte [eax + 2], cl
mov eax, dword [0x97fb70]
mov edx, dword [0x97fb74]
add eax, 4
mov dword [0x97fb70], eax
add eax, edx
mov byte [eax], 7
mov cl, byte [0xc81320]
mov byte [eax + 1], cl
mov dl, byte [0xc8131c]
mov ebx, dword [esp + 0x10]
mov byte [eax + 2], dl
mov ecx, dword [0xc8130c]
mov dword [eax + 4], ecx
mov eax, dword [0x97fb70]
mov edx, dword [0x97fb74]
add eax, 8
mov dword [0x97fb70], eax
add eax, edx
mov byte [eax], 9
mov ecx, dword [0xb7cb84]
mov dword [eax + 4], ecx
add dword [0x97fb70], 8
cmp dword [ebx + 8], edi
jle 0x45e6e4
mov dword [esp + 0x10], edi
lea ecx, [ecx]
mov edx, dword [ebx + 4]
cmp byte [edi + edx], 0
js case.0x45e5d3.7
mov esi, dword [ebx]
add esi, dword [esp + 0x10]
je case.0x45e5d3.7
mov eax, dword [esi + 0x18]
test eax, eax
je case.0x45e5d3.7
mov eax, dword [esi + 0x594]
cmp eax, 0xb
ja case.0x45e5d3.7
jmp dword [eax*4 + 0x45eb74]
mov eax, dword [0x97fb74]
mov ecx, dword [0x97fb70]
push edi
add ecx, eax
push esi
mov byte [ecx], 1
call fcn.0045b730
mov eax, dword [0x97fb70]
add eax, 0x34
jmp 0x45e6c5
mov edx, dword [0x97fb74]
mov eax, dword [0x97fb70]
push edi
push esi
lea ecx, [edx + eax]
call fcn.0045bf90
mov eax, dword [0x97fb70]
add eax, 0x38
jmp 0x45e6c5
mov ecx, dword [0x97fb74]
mov edx, dword [0x97fb70]
push edi
push esi
add ecx, edx
call fcn.0045c070
mov eax, dword [0x97fb70]
add eax, 0x38
jmp 0x45e6c5
mov ecx, dword [0x97fb70]
mov eax, dword [0x97fb74]
lea ebp, [eax + ecx]
push edi
push esi
mov ecx, ebp
mov byte [ebp], 0x11
call fcn.0045b730
mov edx, dword [esi + 0x9c8]
mov dword [ebp + 0x38], edx
mov eax, dword [esi + 0x9c4]
mov dword [ebp + 0x34], eax
mov eax, dword [0x97fb70]
add eax, 0x3c
jmp 0x45e6c5
mov ecx, dword [0x97fb74]
mov edx, dword [0x97fb70]
lea ebp, [ecx + edx]
push edi
push esi
mov ecx, ebp
mov byte [ebp], 0x10
call fcn.0045b730
mov eax, dword [esi + 0x84c]
mov dword [ebp + 0x34], eax
mov eax, dword [0x97fb70]
add eax, 0x38
jmp 0x45e6c5
mov ecx, dword [0x97fb74]
mov edx, dword [0x97fb70]
push edi
push esi
add ecx, edx
call fcn.0045cd10
mov eax, dword [0x97fb70]
add eax, 0x4c
mov dword [0x97fb70], eax
mov ecx, dword [esp + 0x10]
mov eax, dword [ebx + 8]
inc edi
add ecx, 0xa18
cmp edi, eax
mov dword [esp + 0x10], ecx
jl 0x45e5a0
mov edi, dword [esp + 0x14]
mov eax, dword [edi + 8]
xor ebx, ebx
test eax, eax
jle 0x45e7d8
xor ebp, ebp
jmp 0x45e700
mov eax, dword [edi + 4]
cmp byte [ebx + eax], 0
js 0x45e7c6
mov esi, dword [edi]
add esi, ebp
je 0x45e7c6
mov eax, dword [esi + 0x18]
test eax, eax
je 0x45e7c6
mov eax, dword [esi + 0x470]
test ah, 0x20
jne 0x45e7bc
mov ecx, dword [0x97fb74]
mov edx, dword [0x97fb70]
lea eax, [ecx + edx]
mov byte [eax], 3
mov byte [eax + 1], bl
mov cx, word [esi + 0x22]
cmp cx, 0x122
mov word [eax + 2], cx
jl 0x45e762
cmp cx, 0x12c
jg 0x45e762
mov word [eax + 2], 7
mov cl, byte [esi + 0x598]
mov byte [eax + 4], cl
mov edx, dword [0x97fb70]
add edx, 8
mov ecx, esi
mov dword [0x97fb70], edx
call fcn.005df8f0
test al, al
je 0x45e7b2
mov edx, dword [0x97fb70]
mov eax, dword [0x97fb74]
mov ecx, dword [esi + 0x480]
add eax, edx
mov edx, dword [ecx + 4]
push eax
push edx
call fcn.0045c750
mov eax, dword [0x97fb70]
add esp, 8
add eax, 0x78
mov dword [0x97fb70], eax
or dword [esi + 0x470], 0x2000
push ebx
push esi
call fcn.0045c940
add esp, 8
mov eax, dword [edi + 8]
inc ebx
add ebp, 0x7c4
cmp ebx, eax
jl 0x45e700
xor edx, edx
mov eax, 0xc7c748
nop
mov cl, byte [eax + 0x18]
test cl, cl
je 0x45e833
mov esi, dword [0x97fb70]
mov ecx, dword [0x97fb74]
add ecx, esi
mov byte [ecx], 0xa
mov byte [ecx + 3], dl
mov esi, dword [eax]
mov dword [ecx + 4], esi
mov esi, dword [eax + 4]
mov dword [ecx + 8], esi
mov esi, dword [eax + 8]
mov dword [ecx + 0xc], esi
mov esi, dword [eax + 0xc]
mov dword [ecx + 0x10], esi
mov esi, dword [eax + 0x10]
mov dword [ecx + 0x14], esi
mov esi, dword [eax + 0x14]
mov dword [ecx + 0x18], esi
mov ecx, dword [0x97fb70]
mov esi, 0x1c
add ecx, esi
mov dword [0x97fb70], ecx
jmp 0x45e838
mov esi, 0x1c
mov cl, byte [eax + 0x44]
test cl, cl
je 0x45e881
mov edi, dword [0x97fb70]
mov ecx, dword [0x97fb74]
add ecx, edi
mov byte [ecx], 0xa
mov bl, dl
inc bl
mov byte [ecx + 3], bl
mov edi, dword [eax + 0x2c]
mov dword [ecx + 4], edi
mov edi, dword [eax + 0x30]
mov dword [ecx + 8], edi
mov edi, dword [eax + 0x34]
mov dword [ecx + 0xc], edi
mov edi, dword [eax + 0x38]
mov dword [ecx + 0x10], edi
mov edi, dword [eax + 0x3c]
mov dword [ecx + 0x14], edi
mov edi, dword [eax + 0x40]
mov dword [ecx + 0x18], edi
add dword [0x97fb70], esi
mov cl, byte [eax + 0x70]
test cl, cl
je 0x45e8cb
mov edi, dword [0x97fb70]
mov ecx, dword [0x97fb74]
add ecx, edi
mov byte [ecx], 0xa
mov bl, dl
add bl, 2
mov byte [ecx + 3], bl
mov edi, dword [eax + 0x58]
mov dword [ecx + 4], edi
mov edi, dword [eax + 0x5c]
mov dword [ecx + 8], edi
mov edi, dword [eax + 0x60]
mov dword [ecx + 0xc], edi
mov edi, dword [eax + 0x64]
mov dword [ecx + 0x10], edi
mov edi, dword [eax + 0x68]
mov dword [ecx + 0x14], edi
mov edi, dword [eax + 0x6c]
mov dword [ecx + 0x18], edi
add dword [0x97fb70], esi
mov cl, byte [eax + 0x9c]
test cl, cl
je 0x45e92a
mov edi, dword [0x97fb70]
mov ecx, dword [0x97fb74]
add ecx, edi
mov byte [ecx], 0xa
mov bl, dl
add bl, 3
mov byte [ecx + 3], bl
mov edi, dword [eax + 0x84]
mov dword [ecx + 4], edi
mov edi, dword [eax + 0x88]
mov dword [ecx + 8], edi
mov edi, dword [eax + 0x8c]
mov dword [ecx + 0xc], edi
mov edi, dword [eax + 0x90]
mov dword [ecx + 0x10], edi
mov edi, dword [eax + 0x94]
mov dword [ecx + 0x14], edi
mov edi, dword [eax + 0x98]
mov dword [ecx + 0x18], edi
add dword [0x97fb70], esi
mov cl, byte [eax + 0xc8]
test cl, cl
je 0x45e989
mov edi, dword [0x97fb70]
mov ecx, dword [0x97fb74]
add ecx, edi
mov byte [ecx], 0xa
mov bl, dl
add bl, 4
mov byte [ecx + 3], bl
mov edi, dword [eax + 0xb0]
mov dword [ecx + 4], edi
mov edi, dword [eax + 0xb4]
mov dword [ecx + 8], edi
mov edi, dword [eax + 0xb8]
mov dword [ecx + 0xc], edi
mov edi, dword [eax + 0xbc]
mov dword [ecx + 0x10], edi
mov edi, dword [eax + 0xc0]
mov dword [ecx + 0x14], edi
mov edi, dword [eax + 0xc4]
mov dword [ecx + 0x18], edi
add dword [0x97fb70], esi
mov cl, byte [eax + 0xf4]
test cl, cl
je 0x45e9e8
mov edi, dword [0x97fb70]
mov ecx, dword [0x97fb74]
add ecx, edi
mov byte [ecx], 0xa
mov bl, dl
add bl, 5
mov byte [ecx + 3], bl
mov edi, dword [eax + 0xdc]
mov dword [ecx + 4], edi
mov edi, dword [eax + 0xe0]
mov dword [ecx + 8], edi
mov edi, dword [eax + 0xe4]
mov dword [ecx + 0xc], edi
mov edi, dword [eax + 0xe8]
mov dword [ecx + 0x10], edi
mov edi, dword [eax + 0xec]
mov dword [ecx + 0x14], edi
mov edi, dword [eax + 0xf0]
mov dword [ecx + 0x18], edi
add dword [0x97fb70], esi
mov cl, byte [eax + 0x120]
test cl, cl
je 0x45ea47
mov edi, dword [0x97fb70]
mov ecx, dword [0x97fb74]
add ecx, edi
mov byte [ecx], 0xa
mov bl, dl
add bl, 6
mov byte [ecx + 3], bl
mov edi, dword [eax + 0x108]
mov dword [ecx + 4], edi
mov edi, dword [eax + 0x10c]
mov dword [ecx + 8], edi
mov edi, dword [eax + 0x110]
mov dword [ecx + 0xc], edi
mov edi, dword [eax + 0x114]
mov dword [ecx + 0x10], edi
mov edi, dword [eax + 0x118]
mov dword [ecx + 0x14], edi
mov edi, dword [eax + 0x11c]
mov dword [ecx + 0x18], edi
add dword [0x97fb70], esi
mov cl, byte [eax + 0x14c]
test cl, cl
je 0x45eaa6
mov edi, dword [0x97fb70]
mov ecx, dword [0x97fb74]
add ecx, edi
mov byte [ecx], 0xa
mov bl, dl
add bl, 7
mov byte [ecx + 3], bl
mov edi, dword [eax + 0x134]
mov dword [ecx + 4], edi
mov edi, dword [eax + 0x138]
mov dword [ecx + 8], edi
mov edi, dword [eax + 0x13c]
mov dword [ecx + 0xc], edi
mov edi, dword [eax + 0x140]
mov dword [ecx + 0x10], edi
mov edi, dword [eax + 0x144]
mov dword [ecx + 0x14], edi
mov edi, dword [eax + 0x148]
mov dword [ecx + 0x18], edi
add dword [0x97fb70], esi
add eax, 0x160
add edx, 8
cmp eax, 0xc7ca08
jl 0x45e7e0
mov eax, dword [0x97fb70]
mov edx, dword [0x97fb74]
add eax, edx
mov byte [eax], 0xc
mov ecx, dword [0xb6f084]
mov dword [eax + 4], ecx
mov cl, byte [eax + 0xd]
mov edx, dword [0xb6f154]
mov dword [eax + 8], edx
mov dl, byte [eax + 0xd]
xor cl, byte [0xc7c70c]
and cl, 1
xor dl, cl
mov byte [eax + 0xd], dl
mov cl, dl
mov dl, byte [0xc7c70d]
shl dl, 1
xor dl, cl
and dl, 2
xor dl, cl
mov byte [eax + 0xd], dl
mov cl, byte [0xb72914]
mov byte [eax + 0xc], cl
mov eax, dword [0x97fb70]
mov edx, dword [0x97fb74]
add eax, 0x10
mov dword [0x97fb70], eax
mov byte [edx + eax], 8
mov eax, dword [0x97fb70]
mov ecx, dword [0x97fb74]
pop edi
pop esi
add eax, 4
pop ebp
mov dword [0x97fb70], eax
mov byte [ecx + eax], 0
pop ebx
add esp, 0x14
ret