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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xac
mov ecx, dword [ebp + 0xc]
push ebx
push esi
mov esi, dword [ebp + 8]
mov eax, dword [esi + 0xc]
mov dword [esp + 0x14], eax
movzx eax, word [ecx]
cmp ax, 0x40
push edi
jle 0x45d7fd
push pe_nt_image_headers32
push 0x4c3828
call fcn.00410620
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [esi]
movsx edi, ax
shl edi, 6
add edi, 0x27
and edi, 0xfffffff8
lea ebx, [edi + 0x264]
mov ecx, ebx
mov dword [esp + 0x24], esi
call fcn.004102a0
test eax, eax
mov dword [esp + 0x14], eax
je 0x45d830
push ebx
push 0
push eax
call fcn.00482a10
add esp, 0xc
cmp byte [esi + 0x1e], 0
jne 0x45ddfd
mov eax, dword [ebp + 0xc]
movsx edx, word [eax]
mov esi, dword [esp + 0x14]
mov ebx, dword [ebp + 8]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x18]
mov dword [esi + 0x18], edx
mov dword [esi], ebx
call fcn.0042a9d0
mov dword [esi + 0x14], eax
mov ax, word [ebp + 0x18]
add edi, esi
push 0x104
mov dword [esi + 0x1c], edi
mov word [esi + 4], ax
lea esi, [edi + 0x160]
push 0
push esi
mov dword [esp + 0x48], edi
call fcn.00482a10
mov dword [edi], ebx
mov dword [esp + 0x6c], ebx
mov ebx, dword [ebp + 0x10]
add esp, 0xc
xor eax, eax
lea edx, [esp + 0x58]
lea ecx, [edi + 0x20]
push ebx
push edx
mov dword [edi + 4], esi
mov dword [edi + 0x14], eax
mov dword [edi + 0x18], 8
mov dword [edi + 0x1c], ecx
mov dword [edi + 8], eax
mov dword [edi + 0xc], eax
mov dword [esp + 0x60], 0x449fb0
mov dword [esp + 0x64], eax
call fcn.0045e870
push 0x45
push ebx
push edi
call fcn.00459ce0
add esp, 0x14
test ebx, ebx
je 0x45d8f8
mov eax, dword [ebp + 0xc]
cmp word [eax], 0
je 0x45d8e1
mov eax, ebx
call fcn.00448910
test eax, eax
je 0x45d8f8
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x14]
mov eax, dword [ebp + 8]
push 8
push edx
push ebx
push eax
call fcn.0044b3e0
add esp, 0x10
mov ecx, dword [ebp + 0xc]
cmp word [ecx], 0
mov dword [esp + 0x20], 0
jle 0x45d956
lea ebx, [ecx + 0x14]
lea esp, [esp]
mov eax, dword [ebx + 0xc]
mov edx, dword [esi]
mov dword [esi + edx*4 + 4], eax
add dword [esi], 1
mov eax, dword [ebx]
test eax, eax
je 0x45d941
test byte [eax + 0x22], 0x10
je 0x45d941
mov ecx, dword [esp + 0x20]
mov eax, 1
xor edx, edx
call fcn.004add40
or dword [edi + 8], eax
or dword [edi + 0xc], edx
mov ecx, dword [ebp + 0xc]
mov eax, dword [esp + 0x20]
movsx edx, word [ecx]
add eax, 1
add ebx, 0x38
cmp eax, edx
mov dword [esp + 0x20], eax
jl 0x45d910
mov esi, dword [edi + 0x14]
sub esi, 1
js 0x45d971
mov ebx, dword [ebp + 0xc]
push esi
push edi
push ebx
call fcn.0045aaf0
add esp, 0xc
sub esi, 1
jns 0x45d961
mov eax, dword [esp + 0x24]
cmp byte [eax + 0x1e], 0
jne 0x45ddfd
mov ebx, dword [esp + 0x14]
mov ecx, dword [ebp + 0xc]
or eax, 0xffffffff
add ebx, 0x20
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x48], eax
xor eax, eax
cmp word [ecx], ax
mov esi, ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x1c], esi
jle 0x45dca1
fld qword [0x4c4048]
or edx, 0xffffffff
xor eax, eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
fstp qword [esp + 0x78]
mov dword [esp + 0x40], edx
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x50], 1
test edx, edx
jge 0x45dbce
xor eax, eax
cmp dword [esp + 0x50], eax
je 0x45da1a
mov dword [esp + 0x58], eax
jmp 0x45da26
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x34]
mov dword [esp + 0x58], edx
mov edi, dword [esp + 0x10]
mov dword [esp + 0x5c], eax
mov eax, dword [ebp + 0xc]
movsx edx, word [eax]
lea ecx, [edi*8]
sub ecx, edi
cmp edi, edx
mov esi, edi
mov dword [esp + 0x4c], esi
lea ebx, [eax + ecx*8 + 8]
jge 0x45dbb7
mov ecx, dword [esp + 0x14]
mov eax, edi
shl eax, 6
lea edx, [eax + ecx + 0x5c]
mov dword [esp + 0x44], edx
mov al, byte [ebx + 0x15]
and al, 0xa
neg al
sbb eax, eax
neg eax
cmp esi, edi
mov dword [esp + 0x54], eax
je 0x45da7b
test eax, eax
jne 0x45dbb7
mov eax, dword [esp + 0x3c]
add eax, 0x160
xor ecx, ecx
cmp dword [eax], ecx
mov dword [esp + 0x28], eax
jle 0x45daaa
mov edx, dword [ebx + 0x18]
add eax, 4
cmp dword [eax], edx
je 0x45dace
mov edi, dword [esp + 0x28]
add ecx, 1
add eax, 4
cmp ecx, dword [edi]
mov edi, dword [esp + 0x10]
jl 0x45da94
xor eax, eax
xor edx, edx
and eax, dword [esp + 0x30]
and edx, dword [esp + 0x34]
or eax, edx
jne 0x45dadc
cmp esi, edi
jne 0x45db9a
add edi, 1
mov dword [esp + 0x10], edi
jmp 0x45db9a
mov eax, 1
xor edx, edx
call fcn.004add40
jmp 0x45daae
cmp dword [esp + 0x20], 0
jne 0x45daee
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x45daee
mov eax, dword [eax]
jmp 0x45daf0
xor eax, eax
mov ecx, dword [ebx + 0xc]
test byte [ecx + 0x22], 0x10
lea ecx, [esp + 0x90]
je 0x45db25
mov edx, dword [esp + 0x44]
push edx
mov edx, dword [esp + 0x60]
push ecx
mov ecx, dword [esp + 0x44]
push eax
mov eax, dword [esp + 0x64]
push edx
mov edx, dword [ebp + 8]
push eax
push ebx
push ecx
push edx
call fcn.0045b9a0
add esp, 0x20
jmp 0x45db43
mov edx, dword [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x40]
push eax
mov eax, dword [esp + 0x60]
push edx
mov edx, dword [ebp + 8]
push eax
push ebx
push ecx
push edx
call fcn.0045bb70
add esp, 0x1c
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xb4]
and eax, dword [esp + 0x30]
and ecx, dword [esp + 0x34]
or eax, ecx
jne 0x45db93
cmp esi, edi
je 0x45db73
fld qword [esp + 0x78]
fcomp qword [esp + 0xa0]
fnstsw ax
test ah, 0x41
jne 0x45db93
mov eax, dword [esp + 0x4c]
mov ecx, 0xa
lea esi, [esp + 0x90]
lea edi, [esp + 0x68]
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x10]
mov dword [esp + 0x40], eax
mov esi, eax
cmp dword [esp + 0x54], 0
jne 0x45dbb7
mov ecx, dword [ebp + 0xc]
movsx edx, word [ecx]
add dword [esp + 0x44], 0x40
add esi, 1
add ebx, 0x38
cmp esi, edx
mov dword [esp + 0x4c], esi
jl 0x45da60
sub dword [esp + 0x50], 1
mov edi, dword [esp + 0x3c]
mov esi, dword [esp + 0x1c]
mov edx, dword [esp + 0x40]
jns 0x45da04
mov eax, dword [esp + 0x68]
test eax, 0x1000000
je 0x45dbe2
mov ecx, dword [ebp + 0x14]
mov dword [ecx], 0
mov ecx, dword [esp + 0x6c]
and dword [esp + 0x48], eax
mov dword [esi], eax
mov dword [esi + 4], ecx
mov ecx, dword [esp + 0x70]
and eax, 0xf0000
mov dword [esi + 8], ecx
mov dword [esp + 0x54], eax
je 0x45dc10
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
mov dword [esi + 0x14], ecx
add dword [eax + 0x44], 1
jmp 0x45dc17
mov dword [esi + 0x14], 0xffffffff
mov ebx, dword [ebp + 0xc]
xor ecx, ecx
cmp dword [edi + 0x160], ecx
jle 0x45dc4d
lea eax, [edx*8]
sub eax, edx
mov edx, dword [ebx + eax*8 + 0x20]
lea eax, [edi + 0x164]
cmp dword [eax], edx
je 0x45ddd9
add ecx, 1
add eax, 4
cmp ecx, dword [edi + 0x160]
jl 0x45dc37
xor eax, eax
xor edx, edx
not eax
and dword [esp + 0x30], eax
mov eax, dword [esp + 0x40]
lea ecx, [eax*8]
sub ecx, eax
not edx
and dword [esp + 0x34], edx
mov byte [esi + 0x28], al
mov eax, dword [ebx + ecx*8 + 0x3c]
test eax, eax
je 0x45dc80
cmp dword [esp + 0x54], 0
je 0x45ddea
mov eax, dword [esp + 0x20]
movsx edx, word [ebx]
add eax, 1
add esi, 0x40
cmp eax, edx
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], esi
jl 0x45d9b5
mov ebx, dword [esp + 0x2c]
mov esi, dword [ebp + 8]
cmp dword [esi + 0x40], 0
jne 0x45ddfd
mov ecx, dword [esp + 0x24]
cmp byte [ecx + 0x1e], 0
jne 0x45ddfd
mov eax, dword [esp + 0x48]
and eax, 0x4000000
je 0x45dcd4
mov ecx, dword [ebp + 0x14]
test ecx, ecx
je 0x45dcd4
mov dword [ecx], 0
test byte [ebp + 0x18], 4
je 0x45dcec
test eax, eax
je 0x45dcec
mov edx, dword [esp + 0x14]
and dword [ebx], 0xff7fffff
mov byte [edx + 6], 1
mov eax, dword [esi + 0x1a8]
test eax, eax
je 0x45dcf8
mov esi, eax
cmp dword [esi + 0x15c], 0
jne 0x45dd3e
mov edi, dword [esi + 0xc]
test edi, edi
jne 0x45dd25
mov eax, dword [esi]
call fcn.0042a6c0
mov edi, eax
test edi, edi
mov dword [esi + 0xc], eax
je 0x45dd3e
push 0x84
call fcn.0042a890
add esp, 4
push 0
push 0
push 1
mov eax, edi
call fcn.0042a940
add esp, 0xc
add eax, 1
mov dword [esi + 0x15c], eax
mov eax, dword [ebp + 0xc]
cmp word [eax], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], ebx
jle 0x45e23e
mov ecx, dword [ebp + 8]
cmp byte [ecx + 0x1d8], 2
jne 0x45df3b
mov edx, dword [esp + 0x1c]
movzx eax, byte [edx + 0x28]
mov edx, dword [ebp + 0xc]
mov edi, dword [esp + 0x24]
lea ecx, [eax*8]
sub ecx, eax
mov eax, dword [edx + ecx*8 + 0xc]
lea ebx, [edx + ecx*8 + 8]
push eax
push 0x4c385c
call fcn.004125e0
mov ebx, dword [ebx + 8]
add esp, 8
test ebx, ebx
mov esi, eax
je 0x45ddb1
push ebx
push esi
push 0x4c3868
mov eax, edi
call fcn.00412600
add esp, 0xc
mov esi, eax
mov ebx, dword [esp + 0x1c]
mov eax, dword [ebx]
test eax, 0xf0000
je 0x45de13
mov ecx, dword [ebx + 8]
mov edx, dword [ecx]
push edx
push esi
push 0x4c3874
mov eax, edi
call fcn.00412600
add esp, 0xc
jmp 0x45de67
mov eax, 1
xor edx, edx
call fcn.004add40
jmp 0x45dc51
mov eax, dword [eax]
mov esi, dword [ebp + 8]
push eax
push 0x4c3844
call fcn.00410620
add esp, 8
mov ebx, dword [esp + 0x14]
mov esi, dword [esp + 0x24]
call fcn.0045d6f0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test eax, 0x10000000
je 0x45de2c
push esi
push 0x4c3888
mov eax, edi
call fcn.00412600
add esp, 8
jmp 0x45de67
test eax, 0x3000
je 0x45de45
push esi
push 0x4c38a4
mov eax, edi
call fcn.00412600
add esp, 8
jmp 0x45de67
test eax, 0x8000000
je 0x45de69
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 0x18]
mov edx, dword [eax + 0x14]
push ecx
push edx
push esi
push 0x4c38bc
mov eax, edi
call fcn.00412600
add esp, 0x10
mov esi, eax
test dword [ebx], 0x1000000
je 0x45de83
push esi
push 0x4c38dc
mov eax, edi
call fcn.00412600
add esp, 8
mov esi, eax
mov eax, dword [esp + 0x1c]
movzx ecx, byte [eax + 0x28]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x18]
mov ebx, dword [ecx + 0xc]
cmp dword [ecx + 0x10], ebx
jg 0x45deaf
mov edi, ecx
call fcn.0042a7b0
test eax, eax
je 0x45dead
mov eax, 1
jmp 0x45dee1
mov ecx, edi
mov eax, dword [ecx + 0x14]
add dword [ecx + 0xc], 1
lea edx, [ebx + ebx*4]
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x20]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x2c]
mov dword [eax + 8], edx
xor edx, edx
mov byte [eax], 0x86
mov byte [eax + 3], 0
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], edx
mov byte [eax + 1], dl
mov byte [ecx + 0x6e], dl
mov eax, ebx
mov edi, dword [esp + 0x18]
mov edx, dword [edi + 0x14]
mov ecx, dword [edi]
xor ebx, ebx
cmp edx, ebx
je 0x45df2f
cmp byte [ecx + 0x1e], bl
jne 0x45df2f
cmp eax, ebx
jge 0x45deff
mov eax, dword [edi + 0xc]
sub eax, 1
lea eax, [eax + eax*4]
lea edi, [edx + eax*4]
mov edx, dword [edi + 0x10]
movsx eax, byte [edi + 1]
push edx
push eax
push ecx
call fcn.0042ac70
add esp, 0xc
cmp esi, ebx
mov dword [edi + 0x10], ebx
jne 0x45df26
mov dword [edi + 0x10], ebx
mov byte [edi + 1], bl
jmp 0x45df3b
mov dword [edi + 0x10], esi
mov byte [edi + 1], 0xff
jmp 0x45df3b
push esi
push 0xffffffffffffffff
push ecx
call fcn.0042ac70
add esp, 0xc
mov ecx, dword [esp + 0x1c]
movzx eax, byte [ecx + 0x28]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ebp + 0xc]
mov edi, dword [eax + edx*8 + 0x14]
mov esi, dword [edi + 0x44]
test esi, esi
lea ebx, [eax + edx*8 + 8]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x10], 0xfff0bdc0
je 0x45df9b
mov ecx, dword [esp + 0x24]
mov edx, dword [ecx + 4]
test edx, edx
mov dword [esp + 0x10], 0
jle 0x45df9b
mov eax, ecx
mov eax, dword [eax + 8]
add eax, 0xc
cmp dword [eax], esi
je 0x45df9b
mov ecx, dword [esp + 0x10]
add ecx, 1
add eax, 0x10
cmp ecx, edx
mov dword [esp + 0x10], ecx
jl 0x45df85
test byte [edi + 0x22], 2
jne 0x45e220
cmp dword [edi + 0x1c], 0
jne 0x45e220
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx]
test eax, 0x8000000
je 0x45e08b
mov esi, dword [edi + 0x34]
test esi, esi
je 0x45dfd6
mov edx, dword [esi]
cmp edx, dword [esp + 0x24]
je 0x45dfd6
mov esi, dword [esi + 0x10]
test esi, esi
jne 0x45dfc7
mov edi, dword [esp + 0x18]
mov eax, dword [ebx + 0x18]
mov ebx, dword [edi + 0xc]
cmp dword [edi + 0x10], ebx
mov dword [esp + 0x2c], eax
jg 0x45dffb
call fcn.0042a7b0
test eax, eax
je 0x45dffb
mov eax, 1
xor edx, edx
jmp 0x45e029
mov edx, dword [edi + 0x14]
add dword [edi + 0xc], 1
lea ecx, [ebx + ebx*4]
lea eax, [edx + ecx*4]
mov ecx, dword [esp + 0x2c]
xor edx, edx
mov byte [eax], 0x7c
mov byte [eax + 3], 0
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], edx
mov byte [eax + 1], dl
mov byte [edi + 0x6e], dl
mov eax, ebx
mov ecx, dword [edi]
mov edi, dword [edi + 0x14]
cmp edi, edx
je 0x45e12c
cmp byte [ecx + 0x1e], 0
jne 0x45e12c
xor ebx, ebx
cmp eax, ebx
jge 0x45e050
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 0xc]
sub eax, 1
lea eax, [eax + eax*4]
mov edx, dword [edi + eax*4 + 0x10]
lea edi, [edi + eax*4]
movsx eax, byte [edi + 1]
push edx
push eax
push ecx
call fcn.0042ac70
add esp, 0xc
cmp esi, ebx
mov dword [edi + 0x10], ebx
jne 0x45e07b
mov dword [edi + 0x10], ebx
mov byte [edi + 1], bl
jmp 0x45e12c
mov dword [edi + 0x10], esi
mov byte [edi + 1], 0xf6
add dword [esi + 0xc], 1
jmp 0x45e12c
test eax, 0x800000
jne 0x45e112
test byte [ebp + 0x18], 0x10
jne 0x45e112
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x28]
mov ebx, dword [ebp + 8]
xor ecx, ecx
cmp byte [edx + 6], cl
setne cl
add ecx, 0x26
push ecx
mov ecx, dword [esi + 0x18]
push eax
push ecx
mov eax, edi
call fcn.0044c6f0
mov edx, dword [esp + 0x20]
add esp, 0xc
cmp byte [edx + 6], 0
jne 0x45e12c
cmp dword [edi + 0xc], 0x40
jge 0x45e12c
mov eax, dword [esi + 0x28]
mov ecx, dword [esi + 0x2c]
mov esi, eax
xor edx, edx
or esi, ecx
je 0x45e0f7
shrd eax, ecx, 1
shr ecx, 1
mov esi, eax
add edx, 1
or esi, ecx
jne 0x45e0e8
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 0xc]
push edx
push ecx
sub eax, 1
mov ecx, 0xfffffff2
call fcn.0042ae60
add esp, 8
jmp 0x45e12c
mov eax, dword [edi + 4]
mov ecx, dword [edi + 0x18]
mov edx, dword [esp + 0x10]
push eax
mov eax, dword [ebp + 8]
push 0
push ecx
push edx
call fcn.00425260
add esp, 0x10
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x1c]
test dword [edi], 0xf0000
mov ecx, dword [eax + 0x18]
mov dword [edi + 0x10], ecx
je 0x45e214
mov esi, dword [edi + 8]
mov edx, dword [ebp + 8]
push esi
push edx
call fcn.0042a5e0
mov ebx, dword [edi + 0x14]
mov dword [esp + 0x30], eax
mov eax, dword [esi + 0x14]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x20]
mov esi, dword [eax + 0xc]
add esp, 8
cmp dword [eax + 0x10], esi
mov edi, eax
jg 0x45e184
call fcn.0042a7b0
test eax, eax
je 0x45e184
mov esi, 1
xor ebx, ebx
jmp 0x45e1b4
mov edx, dword [edi + 0x14]
add dword [edi + 0xc], 1
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x10]
mov dword [eax + 4], ebx
xor ebx, ebx
mov byte [eax], 0x26
mov byte [eax + 3], 0
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [edi + 0x6e], bl
mov edx, dword [edi + 0x14]
cmp edx, ebx
mov ecx, dword [edi]
mov eax, esi
je 0x45e204
cmp byte [ecx + 0x1e], 0
jne 0x45e204
cmp esi, ebx
jge 0x45e1cf
mov eax, dword [edi + 0xc]
sub eax, 1
lea eax, [eax + eax*4]
lea esi, [edx + eax*4]
mov edx, dword [esi + 0x10]
movsx eax, byte [esi + 1]
push edx
push eax
push ecx
call fcn.0042ac70
mov eax, dword [esp + 0x34]
add esp, 0xc
cmp eax, ebx
mov dword [esi + 0x10], ebx
jne 0x45e1fb
mov dword [esi + 0x10], ebx
mov byte [esi + 1], 0
jmp 0x45e214
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xfa
jmp 0x45e214
mov edx, dword [esp + 0x28]
push edx
push 0xfffffffffffffff0
push ecx
call fcn.0042ac70
add esp, 0xc
mov ebx, dword [esp + 0x10]
mov eax, dword [ebp + 8]
call fcn.0042a150
mov ecx, dword [ebp + 0xc]
mov eax, dword [esp + 0x20]
movsx edx, word [ecx]
add dword [esp + 0x1c], 0x40
add eax, 1
cmp eax, edx
mov dword [esp + 0x20], eax
jl 0x45dd57
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0xc]
mov edx, dword [esp + 0x14]
mov dword [edx + 0xc], ecx
mov ecx, dword [ebp + 0xc]
xor esi, esi
or eax, 0xffffffff
or edx, 0xffffffff
cmp word [ecx], si
jle 0x45e28e
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x14]
add edi, 0x40
push edx
mov edx, dword [ebp + 0x18]
push eax
push edx
mov ecx, esi
mov eax, ebx
call fcn.0045c750
mov ecx, dword [edi]
mov dword [ebx + 0x10], ecx
mov ecx, dword [ebp + 0xc]
movsx ecx, word [ecx]
add esi, 1
add esp, 0xc
add edi, 0x40
cmp esi, ecx
jl 0x45e267
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret