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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f34ab
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x120
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
push 0
push 0x52c2e4
push 0x52c300
mov ebx, ecx
push 0
push esi
mov dword [ebp - 0x50], ebx
call fcn.004db5d9
push 0
push 0x52c31c
push 0x52c300
push 0
push esi
mov dword [ebp - 0x24], eax
call fcn.004db5d9
mov edi, eax
mov eax, dword [ebx]
add esp, 0x28
mov ecx, ebx
mov dword [ebp + 8], edi
call dword [eax + 0x3c]
mov ecx, ebx
call fcn.00457e50
test al, al
je 0x47390d
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x18]
mov eax, dword [ebp + 0x10]
push ecx
mov ecx, dword [ebp + 0xc]
push edx
mov edx, dword [ebx + 0x44]
push eax
push ecx
mov ecx, dword [edx + 8]
push esi
call fcn.00471fe0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov al, byte [ebp + 0x1c]
test al, al
je 0x474264
mov esi, dword [ebp - 0x24]
test esi, esi
je 0x473a40
mov al, byte [esi + 0x2e]
test al, al
jne 0x473a40
mov ecx, esi
call fcn.004589f0
test eax, eax
je 0x473a40
mov ecx, esi
call fcn.004589f0
mov ecx, ebx
call fcn.004589f0
xor eax, eax
mov ecx, 0x19
lea edi, [ebp - 0x12c]
rep stosd dword es:[edi], eax
mov al, byte [esi + 0x2d]
test al, al
mov dword [ebp - 0x12c], 0x64
mov dword [ebp + 0x14], 0x1000000
je 0x473979
mov dword [ebp + 0x14], 0x1008000
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
mov edi, dword [eax + 8]
mov edx, dword [eax + 4]
mov eax, dword [eax + 0xc]
add edi, ecx
mov dword [ebp - 0x6c], edi
mov edi, dword [ebp + 0x10]
fld qword [edi]
add eax, edx
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x68], eax
call fcn.004d8d68
fld qword [edi + 8]
mov dword [ebp - 0x84], eax
call fcn.004d8d68
fld qword [edi + 0x10]
fadd qword [edi]
mov dword [ebp - 0x80], eax
call fcn.004d8d68
fld qword [edi + 0x18]
fadd qword [edi + 8]
mov dword [ebp - 0x7c], eax
call fcn.004d8d68
mov dword [ebp - 0x78], eax
mov eax, dword [ebx + 0x50]
test eax, eax
jle 0x4739e2
mov eax, dword [ebx + 0x48]
mov ecx, dword [eax]
push 0
push eax
call dword [ecx + 0x80]
mov ecx, ebx
call fcn.004589f0
mov ecx, dword [ebp + 0x14]
lea edx, [ebp - 0x12c]
push edx
mov edi, eax
mov eax, dword [edi]
push ecx
lea edx, [ebp - 0x84]
push edx
mov ecx, esi
mov dword [ebp + 0x10], eax
call fcn.004589f0
push eax
lea eax, [ebp - 0x74]
push eax
mov eax, dword [ebp + 0x10]
push edi
call dword [eax + 0x14]
mov eax, dword [ebx + 0x50]
test eax, eax
jle 0x47430d
mov eax, dword [ebx + 0x48]
mov ecx, dword [eax]
push 0
push 1
lea edx, [ebx + 0x54]
push edx
push 0
push eax
call dword [ecx + 0x64]
test eax, eax
jne 0x47434d
jmp 0x47430d
test edi, edi
je 0x47430d
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x3c]
mov eax, dword [edi + 0x24]
test eax, eax
mov dword [ebp - 0x1c], eax
jne 0x473e62
mov edx, dword [edi]
mov ecx, edi
call dword [edx + 0x50]
mov dword [ebp - 0x20], eax
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x80]
test al, al
je 0x47434d
mov ecx, dword [ebp + 0x10]
fld qword [ecx + 8]
fmul qword [0x502180]
call fcn.004d8d68
mov edi, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
mov esi, dword [edi + 8]
fld qword [edx + 0x10]
fmul qword [0x502180]
mov dword [ebp + 0x18], esi
fidiv dword [ebp + 0x18]
mov dword [ebp + 0x1c], eax
call fcn.004d8d68
mov ecx, dword [ebp + 0x10]
fld qword [ecx + 0x18]
mov dword [ebp - 0x28], eax
mov eax, dword [edi + 0xc]
fmul qword [0x502180]
mov dword [ebp + 0x18], eax
fidiv dword [ebp + 0x18]
call fcn.004d8d68
mov edx, dword [ebp + 0x14]
push 0x567368
push edx
mov dword [ebp - 0x30], eax
call fcn.00457350
add esp, 8
test al, al
je 0x473e53
mov eax, dword [ebx + 0xa8]
cmp eax, 0x10
jne 0x473ca0
mov eax, dword [edi + 4]
imul eax, dword [ebx + 0x64]
mov ecx, dword [edi]
cdq
sub eax, edx
sar eax, 1
add eax, ecx
mov ecx, dword [ebx + 0x78]
lea edx, [ecx + eax*2]
mov eax, dword [ebx + 0xac]
mov ecx, dword [ebx + 0xb0]
mov dword [ebp - 0x2c], eax
shr eax, 1
mov dword [ebp - 0x44], eax
mov eax, ecx
shr eax, 1
mov dword [ebp - 0x10], edx
mov edx, dword [ebx + 0xb4]
mov dword [ebp - 0x3c], eax
mov eax, edx
shr eax, 1
mov dword [ebp - 0x48], eax
mov eax, dword [ebp + 0x18]
test eax, eax
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x14], 0
jle 0x473e53
jmp 0x473b50
mov eax, dword [ebp + 0x10]
fld qword [eax]
fmul qword [0x502180]
call fcn.004d8d68
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 8]
mov edi, dword [ebp - 0x10]
sar ecx, 0x10
imul ecx, dword [edx + 4]
test esi, esi
mov edx, dword [ebp - 0x20]
lea ecx, [edx + ecx*4]
mov dword [ebp + 0x18], edi
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x18], 0
jle 0x473c60
jmp 0x473b90
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
add eax, edx
mov edx, eax
sar edx, 0x10
mov edx, dword [ecx + edx*4]
movzx ecx, word [edi]
mov esi, edx
shr esi, 0x18
test esi, esi
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x4c], esi
je 0x473c45
movzx edi, dh
imul edi, esi
mov eax, pe_nt_image_headers32
sub eax, esi
mov dword [ebp + 0x14], eax
mov eax, dword [ebp - 0x1c]
imul edi, eax
mov ebx, ecx
and ebx, eax
imul ebx, dword [ebp + 0x14]
mov eax, dword [ebp - 0x3c]
shr edi, 8
add eax, edi
mov edi, dword [ebp - 0x1c]
add ebx, eax
mov eax, dword [ebp - 0x2c]
shr ebx, 8
and ebx, edi
movzx edi, byte [ebp - 0x32]
imul edi, esi
imul edi, eax
mov esi, ecx
and esi, eax
imul esi, dword [ebp + 0x14]
mov eax, dword [ebp - 0x44]
and edx, 0xff
imul edx, dword [ebp - 0x4c]
shr edi, 8
add eax, edi
add esi, eax
mov eax, dword [ebp - 0x2c]
mov edi, dword [ebp + 0x18]
shr esi, 8
and esi, eax
mov eax, dword [ebp - 0x40]
and ecx, eax
imul edx, eax
imul ecx, dword [ebp + 0x14]
add ebx, esi
mov esi, dword [ebp - 0x48]
shr edx, 8
add esi, edx
add ecx, esi
shr ecx, 8
and ecx, eax
mov eax, dword [ebp - 0x38]
add ebx, ecx
mov word [edi], bx
mov ebx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp + 0xc]
mov esi, dword [edx + 8]
add edi, 2
inc ecx
cmp ecx, esi
mov dword [ebp + 0x18], edi
mov dword [ebp - 0x18], ecx
jl 0x473b90
mov eax, dword [ebx + 0x64]
mov ecx, dword [ebp - 0x10]
cdq
sub eax, edx
sar eax, 1
lea edx, [ecx + eax*2]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + 0x1c]
add ecx, eax
mov eax, dword [ebp - 0x14]
mov dword [ebp + 0x1c], ecx
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x10], edx
mov edx, dword [ecx + 0xc]
inc eax
cmp eax, edx
mov dword [ebp - 0x14], eax
jl 0x473b50
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0x84]
jmp 0x47430d
cmp eax, 0x20
jne 0x473e53
mov eax, dword [edi + 4]
imul eax, dword [ebx + 0x64]
mov ecx, dword [edi]
cdq
and edx, 3
add eax, edx
mov edx, dword [ebx + 0x78]
sar eax, 2
add eax, ecx
mov ecx, dword [ebx + 0xb0]
lea eax, [edx + eax*4]
mov edx, dword [ebx + 0xb4]
mov dword [ebp - 0x10], eax
mov eax, dword [ebx + 0xac]
mov dword [ebp - 0x18], eax
shr eax, 1
mov dword [ebp - 0x4c], eax
mov eax, ecx
shr eax, 1
mov dword [ebp - 0x48], eax
mov eax, edx
shr eax, 1
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp + 0x18]
test eax, eax
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x1c], 0
jle 0x473e53
jmp 0x473d10
mov ecx, dword [ebp + 0x10]
fld qword [ecx]
fmul qword [0x502180]
call fcn.004d8d68
mov edx, dword [ebp + 0x1c]
mov ecx, dword [ebp + 8]
mov edi, dword [ebp - 0x10]
sar edx, 0x10
imul edx, dword [ecx + 4]
test esi, esi
mov ecx, dword [ebp - 0x20]
lea edx, [ecx + edx*4]
mov dword [ebp + 0x18], edi
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x2c], 0
jle 0x473e1e
jmp 0x473d50
mov esi, dword [ebp - 0x28]
mov edx, dword [ebp - 0x38]
add eax, esi
mov ecx, eax
sar ecx, 0x10
mov edx, dword [edx + ecx*4]
mov ecx, dword [edi]
mov esi, edx
shr esi, 0x18
test esi, esi
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x44], esi
je 0x473e03
movzx edi, dh
imul edi, esi
shr edi, 8
mov eax, pe_nt_image_headers32
sub eax, esi
mov dword [ebp + 0x14], eax
mov eax, dword [ebp - 0x14]
imul edi, eax
mov ebx, ecx
and ebx, eax
imul ebx, dword [ebp + 0x14]
mov eax, dword [ebp - 0x48]
add eax, edi
mov edi, dword [ebp - 0x14]
add ebx, eax
mov eax, dword [ebp - 0x18]
shr ebx, 8
and ebx, edi
movzx edi, byte [ebp - 0x3e]
imul edi, esi
mov esi, ecx
and esi, eax
imul esi, dword [ebp + 0x14]
shr edi, 8
imul edi, eax
mov eax, dword [ebp - 0x4c]
and edx, 0xff
imul edx, dword [ebp - 0x44]
add eax, edi
add esi, eax
mov eax, dword [ebp - 0x18]
mov edi, dword [ebp + 0x18]
shr esi, 8
and esi, eax
mov eax, dword [ebp - 0x34]
and ecx, eax
imul ecx, dword [ebp + 0x14]
shr edx, 8
imul edx, eax
add ebx, esi
mov esi, dword [ebp - 0x3c]
add esi, edx
add ecx, esi
shr ecx, 8
and ecx, eax
mov eax, dword [ebp - 0x24]
add ebx, ecx
mov dword [edi], ebx
mov ebx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp + 0xc]
mov esi, dword [edx + 8]
add edi, 4
inc ecx
cmp ecx, esi
mov dword [ebp + 0x18], edi
mov dword [ebp - 0x2c], ecx
jl 0x473d50
mov eax, dword [ebx + 0x64]
mov ecx, dword [ebp - 0x10]
cdq
and edx, 3
add eax, edx
sar eax, 2
lea edx, [ecx + eax*4]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + 0x1c]
add ecx, eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp + 0x1c], ecx
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x10], edx
mov edx, dword [ecx + 0xc]
inc eax
cmp eax, edx
mov dword [ebp - 0x1c], eax
jl 0x473d10
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0x84]
jmp 0x47430d
mov eax, dword [edi + 0x28]
mov edx, dword [ebx]
mov ecx, ebx
mov dword [ebp - 0x18], eax
call dword [edx + 0x80]
test al, al
je 0x47434d
mov eax, dword [ebp + 0x10]
fld qword [eax + 8]
fmul qword [0x502180]
call fcn.004d8d68
mov edi, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov esi, dword [edi + 8]
fld qword [ecx + 0x10]
fmul qword [0x502180]
mov dword [ebp + 0x18], esi
fidiv dword [ebp + 0x18]
mov dword [ebp + 0x1c], eax
call fcn.004d8d68
mov edx, dword [edi + 0xc]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0x10]
fld qword [eax + 0x18]
mov dword [ebp + 0x18], edx
fmul qword [0x502180]
fidiv dword [ebp + 0x18]
call fcn.004d8d68
mov ecx, dword [ebp + 0x14]
push 0x567368
push ecx
mov dword [ebp - 0x24], eax
call fcn.00457350
add esp, 8
test al, al
je 0x474255
mov eax, dword [ebx + 0xa8]
cmp eax, 0x10
jne 0x4740a2
mov eax, dword [edi + 4]
imul eax, dword [ebx + 0x64]
mov ecx, dword [edi]
cdq
sub eax, edx
mov edx, dword [ebx + 0x78]
sar eax, 1
add eax, ecx
mov ecx, dword [ebx + 0xb0]
lea eax, [edx + eax*2]
mov edx, dword [ebx + 0xb4]
mov dword [ebp - 0x10], eax
mov eax, dword [ebx + 0xac]
mov dword [ebp - 0x28], eax
shr eax, 1
mov dword [ebp - 0x4c], eax
mov eax, ecx
shr eax, 1
mov dword [ebp - 0x48], eax
mov eax, edx
shr eax, 1
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp + 0x18]
test eax, eax
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x14], 0
jle 0x474255
lea esp, [esp]
mov ecx, dword [ebp + 0x10]
fld qword [ecx]
fmul qword [0x502180]
call fcn.004d8d68
mov edx, dword [ebp + 8]
mov edi, dword [ebp - 0x10]
mov ecx, eax
mov eax, dword [ebp + 0x1c]
sar eax, 0x10
imul eax, dword [edx + 4]
add eax, dword [ebp - 0x18]
test esi, esi
mov dword [ebp + 0x18], edi
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x20], 0
jle 0x474062
jmp 0x473f90
mov ecx, dword [ebp - 0x38]
nop
mov esi, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x1c]
add ecx, esi
mov dword [ebp - 0x38], ecx
sar ecx, 0x10
movzx ecx, byte [ecx + eax]
mov edx, dword [edx + ecx*4]
movzx ecx, word [edi]
mov esi, edx
shr esi, 0x18
test esi, esi
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x44], esi
je 0x474047
movzx edi, dh
imul edi, esi
mov eax, pe_nt_image_headers32
sub eax, esi
mov dword [ebp + 0x14], eax
mov eax, dword [ebp - 0x30]
imul edi, eax
mov ebx, ecx
and ebx, eax
imul ebx, dword [ebp + 0x14]
mov eax, dword [ebp - 0x48]
shr edi, 8
add eax, edi
mov edi, dword [ebp - 0x30]
add ebx, eax
mov eax, dword [ebp - 0x28]
shr ebx, 8
and ebx, edi
movzx edi, byte [ebp - 0x3e]
imul edi, esi
imul edi, eax
mov esi, ecx
and esi, eax
imul esi, dword [ebp + 0x14]
mov eax, dword [ebp - 0x4c]
and edx, 0xff
imul edx, dword [ebp - 0x44]
shr edi, 8
add eax, edi
add esi, eax
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp + 0x18]
shr esi, 8
and esi, eax
mov eax, dword [ebp - 0x34]
and ecx, eax
imul edx, eax
imul ecx, dword [ebp + 0x14]
add ebx, esi
mov esi, dword [ebp - 0x3c]
shr edx, 8
add esi, edx
add ecx, esi
shr ecx, 8
and ecx, eax
mov eax, dword [ebp - 0x54]
add ebx, ecx
mov word [edi], bx
mov ebx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp + 0xc]
mov esi, dword [edx + 8]
add edi, 2
inc ecx
cmp ecx, esi
mov dword [ebp + 0x18], edi
mov dword [ebp - 0x20], ecx
jl 0x473f8c
mov eax, dword [ebx + 0x64]
mov ecx, dword [ebp - 0x10]
cdq
sub eax, edx
sar eax, 1
lea edx, [ecx + eax*2]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + 0x1c]
add ecx, eax
mov eax, dword [ebp - 0x14]
mov dword [ebp + 0x1c], ecx
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x10], edx
mov edx, dword [ecx + 0xc]
inc eax
cmp eax, edx
mov dword [ebp - 0x14], eax
jl 0x473f50
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0x84]
jmp 0x47430d
cmp eax, 0x20
jne 0x474255
mov eax, dword [edi + 4]
imul eax, dword [ebx + 0x64]
mov ecx, dword [edi]
cdq
and edx, 3
add eax, edx
mov edx, dword [ebx + 0x78]
sar eax, 2
add eax, ecx
mov ecx, dword [ebx + 0xb0]
lea eax, [edx + eax*4]
mov edx, dword [ebx + 0xb4]
mov dword [ebp - 0x10], eax
mov eax, dword [ebx + 0xac]
mov dword [ebp - 0x28], eax
shr eax, 1
mov dword [ebp - 0x40], eax
mov eax, ecx
shr eax, 1
mov dword [ebp - 0x38], eax
mov eax, edx
shr eax, 1
mov dword [ebp - 0x34], eax
mov eax, dword [ebp + 0x18]
test eax, eax
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x14], 0
jle 0x474255
jmp 0x474110
mov ecx, dword [ebp + 0x10]
fld qword [ecx]
fmul qword [0x502180]
call fcn.004d8d68
mov edx, dword [ebp + 8]
mov edi, dword [ebp - 0x10]
mov ecx, eax
mov eax, dword [ebp + 0x1c]
sar eax, 0x10
imul eax, dword [edx + 4]
add eax, dword [ebp - 0x18]
test esi, esi
mov dword [ebp + 0x18], edi
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x20], 0
jle 0x474220
jmp 0x474150
mov ecx, dword [ebp - 0x54]
nop
mov esi, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x1c]
add ecx, esi
mov dword [ebp - 0x54], ecx
sar ecx, 0x10
movzx ecx, byte [ecx + eax]
mov edx, dword [edx + ecx*4]
mov ecx, dword [edi]
mov esi, edx
shr esi, 0x18
test esi, esi
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x4c], esi
je 0x474205
movzx edi, dh
imul edi, esi
shr edi, 8
mov eax, pe_nt_image_headers32
sub eax, esi
mov dword [ebp + 0x14], eax
mov eax, dword [ebp - 0x30]
imul edi, eax
mov ebx, ecx
and ebx, eax
imul ebx, dword [ebp + 0x14]
mov eax, dword [ebp - 0x38]
add eax, edi
mov edi, dword [ebp - 0x30]
add ebx, eax
mov eax, dword [ebp - 0x28]
shr ebx, 8
and ebx, edi
movzx edi, byte [ebp - 0x46]
imul edi, esi
mov esi, ecx
and esi, eax
imul esi, dword [ebp + 0x14]
shr edi, 8
imul edi, eax
mov eax, dword [ebp - 0x40]
and edx, 0xff
imul edx, dword [ebp - 0x4c]
add eax, edi
add esi, eax
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp + 0x18]
shr esi, 8
and esi, eax
mov eax, dword [ebp - 0x44]
and ecx, eax
imul ecx, dword [ebp + 0x14]
shr edx, 8
imul edx, eax
add ebx, esi
mov esi, dword [ebp - 0x34]
add esi, edx
add ecx, esi
shr ecx, 8
and ecx, eax
mov eax, dword [ebp - 0x3c]
add ebx, ecx
mov dword [edi], ebx
mov ebx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp + 0xc]
mov esi, dword [edx + 8]
add edi, 4
inc ecx
cmp ecx, esi
mov dword [ebp + 0x18], edi
mov dword [ebp - 0x20], ecx
jl 0x47414c
mov eax, dword [ebx + 0x64]
mov ecx, dword [ebp - 0x10]
cdq
and edx, 3
add eax, edx
sar eax, 2
lea edx, [ecx + eax*4]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + 0x1c]
add ecx, eax
mov eax, dword [ebp - 0x14]
mov dword [ebp + 0x1c], ecx
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x10], edx
mov edx, dword [ecx + 0xc]
inc eax
cmp eax, edx
mov dword [ebp - 0x14], eax
jl 0x474110
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0x84]
jmp 0x47430d
mov al, byte [ebx + 0x2e]
test al, al
jne 0x474333
mov al, byte [ebx + 0x2d]
test al, al
jne 0x474333
mov eax, dword [ebx + 0x44]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x474333
mov ecx, dword [ebx + 0x40]
push ecx
lea ecx, [ebp - 0xc8]
call fcn.0045e460
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 0xc]
mov ecx, dword [edi + 8]
xor edx, edx
push eax
mov dword [ebp - 0x5c], ecx
push ecx
lea ecx, [ebp - 0xc8]
mov dword [ebp - 4], edx
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x58], eax
call fcn.0045f060
mov edx, dword [ebp + 0x14]
mov eax, dword [ebp + 0x10]
push 0
push 0
push edx
push eax
lea ecx, [ebp - 0x64]
push ecx
push esi
lea ecx, [ebp - 0xc8]
call fcn.00461be0
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebx]
push eax
push ecx
mov ecx, dword [edi + 4]
lea eax, [ebp - 0x64]
push eax
mov eax, dword [edi]
push ecx
push eax
lea ecx, [ebp - 0xc8]
push ecx
mov ecx, ebx
call dword [edx + 0x18]
lea ecx, [ebp - 0xc8]
mov dword [ebp - 4], 0xffffffff
call fcn.0045e730
mov edx, dword [ebx + 0x14]
push edx
call fcn.004d9c4d
add esp, 4
pop edi
pop esi
mov dword [ebx + 0x14], 0
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
push 0
push eax
mov eax, dword [ebp + 0xc]
push ecx
push edx
push eax
push esi
mov ecx, ebx
call fcn.00461be0
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18