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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xa8
push ebx
mov eax, ecx
mov dword [esp + 0x84], 0
push ebp
push esi
xorps xmm0, xmm0
mov dword [esp + 0x28], eax
mov ecx, dword [eax + 0x1c]
xor ebx, ebx
mov esi, dword [eax]
push edi
movlpd qword [esp + 0x40], xmm0
mov dword [esp + 0x94], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x34], ebx
call fcn.00426940
test eax, eax
jne 0x425311
cmp dword [esi + 0x24], 0
jne 0x42530f
mov ebp, dword [esi + 0x34]
mov eax, ebp
mov edx, dword [esi + 0x30]
mov ecx, edx
push ebp
push edx
push 0
add ecx, 1
mov dword [esp + 0x48], edx
push 0
push 0
adc eax, 0
mov dword [esi + 0x30], ecx
push 0
lea edx, [esp + 0x34]
mov dword [esp + 0x70], ebp
mov ecx, esi
mov dword [esi + 0x34], eax
call fcn.00424520
mov edi, eax
xor ecx, ecx
mov eax, dword [esi + 0x70]
xorps xmm0, xmm0
mov dword [esp + 0x18], eax
xor eax, eax
mov dword [esp + 0x14], edi
mov dword [esp + 0x28], ecx
mov dword [esp + 0x88], ecx
mov dword [esp + 0x74], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x48], eax
movlpd qword [esp + 0x60], xmm0
test edi, edi
jne 0x424cda
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x424cc4
mov eax, dword [esp + 0x2c]
xor ebp, ebp
mov ecx, dword [esp + 0x44]
mov ebx, dword [esp + 0x64]
mov edi, dword [esi + 0x64]
mov eax, dword [eax + 8]
sub edi, dword [esi + 0x60]
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x60]
mov dword [esp + 0x38], ebp
mov dword [esp + 0x4c], eax
mov dword [esp + 0x70], ecx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x50], edi
test eax, eax
jne 0x4248a6
mov eax, dword [esi + 0x14]
mov ecx, eax
mov edx, dword [esi]
add edx, 0x10
mov eax, dword [eax]
call eax
mov dword [esp + 0x4c], eax
test eax, eax
je 0x424b8c
mov dword [eax], 0
test ebp, ebp
je 0x42489f
mov dword [ebp], eax
jmp 0x4248a6
mov ecx, dword [esp + 0x2c]
mov dword [ecx + 8], eax
add eax, 0x10
mov dword [esp + 0x40], eax
mov dword [esp + 0x30], eax
test edi, edi
je 0x4248dd
mov eax, dword [esi + 0x60]
mov ebp, edi
mov ebx, dword [esp + 0x38]
add eax, 0x10
add eax, dword [esi + 0x5c]
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], 0
mov dword [esp + 0x48], edi
mov dword [esp + 0x30], eax
jmp 0x4249e2
mov edi, dword [esi]
mov ebx, eax
mov eax, dword [esi + 0xc]
xor ebp, ebp
mov dword [esp + 0x60], eax
test edi, edi
je 0x424921
nop
lea ecx, [esp + 0x18]
mov dword [esp + 0x18], edi
push ecx
mov ecx, eax
mov edx, ebx
mov eax, dword [eax]
call eax
mov edx, eax
mov eax, dword [esp + 0x18]
add ebp, eax
mov dword [esp + 0x14], edx
add ebx, eax
sub edi, eax
test edx, edx
jne 0x424927
test eax, eax
je 0x424921
mov eax, dword [esp + 0x60]
test edi, edi
jne 0x4248f0
xor edx, edx
mov dword [esp + 0x14], edx
mov ecx, dword [esp + 0x20]
mov edi, dword [esp + 0x24]
add ecx, ebp
mov ebx, dword [esp + 0x38]
mov eax, dword [esp + 0x48]
adc edi, 0
test ebx, ebx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], edi
cmove eax, ebp
add dword [esi + 0x68], ebp
mov dword [esp + 0x48], eax
adc dword [esi + 0x6c], 0
xor eax, eax
cmp ebp, dword [esi]
setne al
mov dword [esp + 0x18], eax
test eax, eax
je 0x42496a
mov dword [esi + 0x70], 1
test edx, edx
je 0x424986
xor eax, eax
mov dword [esi + 0x48], edx
mov dword [esi + 0x70], 1
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], eax
sub ecx, dword [esp + 0x70]
mov eax, edi
sbb eax, dword [esp + 0x5c]
mov dword [esp + 0x64], eax
jne 0x42499b
cmp ecx, 1
jb 0x4249de
push dword [esp + 0x58]
lea edx, [esp + 0x20]
mov ecx, esi
push dword [esp + 0x40]
push 0
push 0
push 0
push 0
call fcn.00424520
mov edi, eax
mov dword [esp + 0x14], edi
test edi, edi
jne 0x424c7b
cmp dword [esp + 0x1c], eax
jne 0x424c24
mov eax, dword [esp + 0x20]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x5c], eax
mov edi, dword [esp + 0x50]
xor eax, eax
mov dword [esp + 0xa0], ebp
test ebx, ebx
mov dword [esp + 0xac], 1
lea ecx, [esp + 0x98]
sete al
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0xa8], eax
mov eax, dword [esi + 0x18]
mov edx, dword [ecx + 4]
mov ecx, dword [esi + 0x1c]
mov eax, dword [eax]
call eax
mov ebx, dword [esp + 0xa8]
mov eax, dword [esp + 0xac]
mov dword [esp + 0x88], 1
mov dword [esp + 0x34], eax
cmp ebx, 1
je 0x424be5
test edi, edi
mov edi, dword [esp + 0xa0]
je 0x424a76
push edi
push dword [esp + 0x34]
push dword [esp + 0x48]
call sub.msvcrt.dll_memcpy
add esp, 0xc
add dword [esi + 0x60], edi
test ebx, ebx
jne 0x424ace
cmp dword [esp + 0x18], ebx
jne 0x424ae1
cmp edi, ebp
jne 0x424aad
mov eax, dword [esp + 0x4c]
mov ebp, eax
mov edi, dword [esp + 0x50]
mov dword [esp + 0x38], ebp
mov eax, dword [eax]
mov dword [esp + 0x4c], eax
test edi, edi
je 0x424872
xor edi, edi
mov dword [esi + 0x60], edi
mov dword [esi + 0x64], edi
jmp 0x42486e
mov ebx, dword [esp + 0x34]
mov edi, 0xb
xor ebp, ebp
mov dword [esp + 0x14], edi
mov eax, 1
mov dword [esp + 0x30], ebp
mov dword [esp + 0x18], eax
jmp 0x424cff
mov ecx, dword [esp + 0x18]
cmp ebx, 3
mov eax, 1
cmove ecx, eax
mov dword [esp + 0x18], ecx
mov ecx, 1
mov dword [esp + 0x28], ecx
cmp edi, ebp
jne 0x424b01
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
jmp 0x424c1c
cmp ebx, 3
jne 0x424b4d
mov eax, dword [esp + 0x30]
mov ebx, ecx
mov edx, dword [esp + 0x78]
add eax, edi
mov dword [esp + 0x90], eax
mov eax, ebp
sub eax, edi
cmp dword [esp + 0x50], 0
mov dword [esp + 0x94], eax
cmovne edx, ebx
sub dword [esp + 0x20], eax
mov dword [esp + 0x78], edx
sbb dword [esp + 0x24], 0
cmp dword [esp + 0x38], 0
jne 0x424c1c
mov dword [esp + 0x48], edi
jmp 0x424c1c
cmp dword [esp + 0x50], 0
je 0x424b62
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], 0
jmp 0x424bcb
mov eax, dword [esi + 0x5c]
test eax, eax
jne 0x424b85
mov eax, dword [esi + 0x14]
mov ecx, eax
mov edx, dword [esi]
add edx, 0x10
mov eax, dword [eax]
call eax
test eax, eax
je 0x424b8c
mov edi, dword [esp + 0xa0]
mov dword [esi + 0x5c], eax
lea ecx, [eax + 0x10]
test ecx, ecx
jne 0x424b9e
mov dword [esp + 0x18], 1
mov dword [esp + 0x74], 1
jmp 0x424c18
mov eax, dword [esp + 0x30]
sub ebp, edi
sub dword [esp + 0x20], ebp
push ebp
sbb dword [esp + 0x28], 0
add eax, edi
push eax
push ecx
mov dword [esi + 0x64], ebp
mov dword [esi + 0x60], 0
call sub.msvcrt.dll_memcpy
mov edi, dword [esp + 0xac]
add esp, 0xc
mov ecx, dword [esp + 0x48]
cmp dword [esp + 0x38], 0
mov dword [esp + 0x18], 0
cmove ecx, edi
mov dword [esp + 0x48], ecx
jmp 0x424c18
mov dword [esp + 0x18], 1
mov dword [esp + 0x7c], 1
test edi, edi
je 0x424c0a
push ebp
push dword [esp + 0x34]
push dword [esp + 0x48]
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov ecx, dword [esp + 0x28]
mov edi, dword [esp + 0x14]
test edi, edi
jne 0x424c7f
lea edi, [esi + 0xb0]
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [esi + 0x88], 0
je 0x424c5e
mov eax, dword [esp + 0x58]
cmp eax, dword [esi + 0x94]
jb 0x424c5e
ja 0x424c54
mov eax, dword [esp + 0x3c]
cmp eax, dword [esi + 0x90]
jbe 0x424c5e
mov dword [esp + 0x1c], 1
jmp 0x424c66
mov dword [esp + 0x1c], 0
mov eax, dword [esi + 0x9c]
push edi
mov dword [esp + 0x18], eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x1c]
xor ebp, ebp
mov dword [esp + 0x30], ebp
test edi, edi
jne 0x424cf0
test ecx, ecx
je 0x424cec
test eax, eax
jne 0x424cf0
mov ecx, dword [esp + 0x2c]
mov eax, dword [esi + 0x18]
mov edx, dword [ecx + 4]
mov ecx, dword [esi + 0x1c]
mov eax, dword [eax + 4]
call eax
mov ebp, eax
mov dword [esp + 0x30], ebp
test ebp, ebp
je 0x424cfb
mov eax, 1
mov dword [esp + 0x28], edi
mov dword [esp + 0x18], eax
jmp 0x424cff
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x28]
jmp 0x424c87
mov eax, dword [esp + 0x64]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x20], eax
jmp 0x424c83
test eax, eax
je 0x424cfb
mov eax, 1
mov dword [esp + 0x18], eax
jmp 0x424cff
mov eax, dword [esp + 0x18]
mov dword [esp + 0x60], 0
mov dword [esp + 0x70], 0
test eax, eax
jne 0x424d7f
mov eax, dword [esi + 0x58]
cmp eax, dword [esi + 0x54]
jae 0x424d53
test ebx, ebx
je 0x424d53
lea eax, [eax + eax*4]
lea eax, [eax + 0x19]
lea ecx, [esi + eax*8]
call fcn.00424030
mov ecx, eax
test ecx, ecx
jne 0x424d38
inc dword [esi + 0x58]
jmp 0x424d53
mov eax, dword [esi + 0x58]
cmp eax, 1
jne 0x424d50
mov dword [esp + 0x18], eax
xor eax, eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x70], ecx
jmp 0x424d83
mov dword [esi + 0x54], eax
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 4]
inc ecx
cmp ecx, dword [esi + 0x58]
sbb eax, eax
and eax, ecx
add eax, 5
lea eax, [eax + eax*4]
lea ebx, [esi + eax*8]
lea ecx, [ebx + 0x1c]
mov dword [esp + 0x60], ebx
call fcn.004268d0
test eax, eax
jne 0x425311
mov eax, dword [esp + 0x28]
xorps xmm0, xmm0
movlpd qword [esp + 0x40], xmm0
movlpd qword [esp + 0x50], xmm0
movlpd qword [esp + 0x68], xmm0
movlpd qword [esp + 0x80], xmm0
test edi, edi
jne 0x424f97
test eax, eax
je 0x424f97
test ebp, ebp
jne 0x424f97
mov ecx, dword [esp + 0x2c]
lea eax, [edi + 1]
mov edx, dword [esp + 0x68]
mov ebp, dword [ecx + 8]
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x5c], ebp
test eax, eax
je 0x424df9
mov ebx, dword [esp + 0x48]
jmp 0x424e1d
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub edi, edx
mov ebx, dword [esi]
sbb eax, ecx
mov dword [esp + 0x40], 0
cmp dword [esp + 0x40], eax
jb 0x424e1d
ja 0x424e1b
cmp ebx, edi
jbe 0x424e1d
mov ebx, edi
add edx, ebx
mov dword [esp + 0x40], 1
mov dword [esp + 0x68], edx
adc ecx, 0
mov dword [esp + 0x6c], ecx
cmp edx, dword [esp + 0x20]
jne 0x424e45
cmp ecx, dword [esp + 0x24]
jne 0x424e45
mov eax, 1
jmp 0x424e47
xor eax, eax
mov edi, dword [esi + 0x18]
lea ecx, [esp + 0x40]
push ecx
lea ecx, [esp + 0x84]
push ecx
lea ecx, [esp + 0x70]
push ecx
mov ecx, dword [esi + 0x1c]
push eax
push ebx
lea eax, [ebp + 0x10]
push eax
mov eax, dword [esp + 0x44]
mov edx, dword [eax + 4]
mov eax, dword [edi + 8]
call eax
mov ebp, eax
mov dword [esp + 0x30], ebp
test ebp, ebp
jne 0x424f3a
cmp dword [esp + 0x40], eax
jne 0x424f91
mov edx, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
cmp edx, dword [esp + 0x20]
jne 0x424ea1
cmp ecx, dword [esp + 0x24]
je 0x424f91
mov edi, dword [esp + 0x80]
mov eax, edx
sub eax, dword [esp + 0x38]
mov ebp, ecx
mov ebx, dword [esp + 0x84]
sbb ebp, dword [esp + 0x34]
sub edi, dword [esp + 0x50]
sbb ebx, dword [esp + 0x4c]
test ebp, ebp
ja 0x424ed7
jb 0x424ece
cmp eax, 1
jae 0x424ed7
test ebx, ebx
jne 0x424ed7
cmp edi, 1
jb 0x424f2c
push dword [esp + 0x58]
lea edx, [esp + 0x20]
mov ecx, esi
push dword [esp + 0x40]
push ebx
push edi
push ebp
push eax
call fcn.00424520
mov edi, eax
mov dword [esp + 0x14], edi
test edi, edi
jne 0x424fb9
cmp dword [esp + 0x1c], eax
jne 0x424fb9
mov edx, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
mov edi, dword [esp + 0x80]
mov ebx, dword [esp + 0x84]
mov dword [esp + 0x38], edx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x50], edi
mov dword [esp + 0x4c], ebx
mov ebp, dword [esp + 0x5c]
xor eax, eax
mov ebp, dword [ebp]
jmp 0x424deb
lea edi, [esi + 0xb0]
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [esi + 0x88], 0
je 0x424f6c
mov eax, dword [esp + 0x58]
cmp eax, dword [esi + 0x94]
ja 0x424f8a
mov eax, dword [esp + 0x3c]
jb 0x424f70
cmp eax, dword [esi + 0x90]
jae 0x424f8a
jmp 0x424f70
mov eax, dword [esp + 0x3c]
mov dword [esi + 0x90], eax
mov eax, dword [esp + 0x58]
mov dword [esi + 0x94], eax
mov dword [esi + 0x88], 1
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov edi, dword [esp + 0x14]
jmp 0x424fbd
mov eax, dword [esp + 0x44]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x50], eax
jmp 0x424fbd
mov ebp, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0x20]
call fcn.00426940
test eax, eax
jne 0x425311
mov eax, dword [esp + 0x88]
xor ebx, ebx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x40], 1
mov dword [esp + 0x14], eax
cmp dword [esi + 0x24], ebx
jne 0x42530f
cmp dword [esi + 0x50], ebx
je 0x425003
mov eax, 1
mov dword [esp + 0x1c], eax
jmp 0x425068
mov ecx, dword [esp + 0x74]
test ebp, ebp
je 0x425020
cmp ebp, 2
mov dword [esi + 0x50], 1
mov eax, 1
mov dword [esi + 0x4c], ebp
cmove ecx, eax
mov eax, dword [esp + 0x70]
test eax, eax
je 0x425036
mov dword [esi + 0x50], 1
mov dword [esi + 0x40], eax
mov dword [esp + 0x14], ebx
test ecx, ecx
je 0x42504c
mov dword [esi + 0x50], 1
mov dword [esi + 0x38], 1
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x1c]
cmp dword [esp + 0x7c], ebx
je 0x425068
mov dword [esi + 0x50], 1
mov dword [esi + 0x3c], 1
mov dword [esp + 0x14], ebx
cmp dword [esp + 0x28], ebx
je 0x425131
test eax, eax
je 0x425088
xorps xmm0, xmm0
movlpd qword [esp + 0x68], xmm0
movlpd qword [esp + 0x80], xmm0
mov ebp, dword [esp + 0x68]
sub ebp, dword [esp + 0x38]
mov eax, dword [esp + 0x6c]
sbb eax, dword [esp + 0x34]
mov edi, dword [esp + 0x80]
sub edi, dword [esp + 0x50]
mov ebx, dword [esp + 0x84]
sbb ebx, dword [esp + 0x4c]
mov dword [esp + 0x7c], eax
lea eax, [esi + 0xb0]
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
add dword [esi + 0xa0], ebp
mov eax, dword [esp + 0x7c]
adc dword [esi + 0xa4], eax
add dword [esi + 0xa8], edi
adc dword [esi + 0xac], ebx
cmp dword [esi + 0x9c], 0
jne 0x42511a
mov eax, dword [esi + 0x98]
test eax, eax
je 0x42511a
push dword [esi + 0xac]
mov ecx, eax
mov eax, dword [eax]
push dword [esi + 0xa8]
push dword [esi + 0xa4]
push dword [esi + 0xa0]
call eax
test eax, eax
je 0x42511a
mov dword [esi + 0x9c], 0xa
mov edi, dword [esi + 0x9c]
lea eax, [esi + 0xb0]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ebx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x18]
xor ecx, ecx
test ebp, ebp
sete cl
cmp dword [esp + 0x88], 0
mov dword [esp + 0x8c], ecx
je 0x425222
test edi, edi
jne 0x425166
cmp dword [esp + 0x14], edi
je 0x425166
cmp dword [esp + 0x1c], edi
jne 0x425166
lea ecx, [edi + 1]
jmp 0x425168
xor ecx, ecx
mov eax, dword [esi + 0x18]
lea edx, [esp + 0x40]
push edx
lea edx, [esp + 0x90]
push edx
push dword [esp + 0x80]
mov eax, dword [eax + 0xc]
push dword [esp + 0xa0]
push dword [esp + 0xa0]
push ecx
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 4]
mov ecx, dword [esi + 0x1c]
call eax
mov edi, eax
mov dword [esp + 0x14], edi
test edi, edi
je 0x4251b1
mov ebx, 1
mov dword [esi + 0x50], ebx
jmp 0x4251c0
mov ecx, dword [esp + 0x8c]
test ecx, ecx
jne 0x425222
test ebp, ebp
jne 0x425222
lea edi, [esi + 0xb0]
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [esi + 0x88], 0
je 0x4251f2
mov eax, dword [esp + 0x58]
cmp eax, dword [esi + 0x94]
ja 0x425210
mov eax, dword [esp + 0x3c]
jb 0x4251f6
cmp eax, dword [esi + 0x90]
jae 0x425210
jmp 0x4251f6
mov eax, dword [esp + 0x3c]
mov dword [esi + 0x90], eax
mov eax, dword [esp + 0x58]
mov dword [esi + 0x94], eax
mov dword [esi + 0x88], 1
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [esp + 0x8c]
mov edi, dword [esp + 0x14]
cmp dword [esp + 0x40], 0
je 0x425294
cmp dword [esp + 0x28], 0
je 0x425251
test edi, edi
jne 0x425251
cmp dword [esi + 0x50], edi
jne 0x425251
cmp dword [esp + 0x30], edi
jne 0x425251
cmp dword [esp + 0x1c], edi
jne 0x425251
cmp dword [esi + 0x84], edi
jne 0x425269
test ebx, ebx
je 0x425294
cmp dword [esi + 0x84], 0
jne 0x425269
mov edi, dword [esp + 0x2c]
mov eax, dword [edi + 4]
mov dword [esi + 0x80], eax
jmp 0x42526d
mov edi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x20]
mov eax, ebx
mov edx, dword [esp + 0x24]
or eax, edx
jne 0x42527f
test ebp, ebp
jne 0x4252a5
mov eax, dword [esp + 0x48]
mov dword [edi + 0xc], eax
mov dword [edi + 0x10], ebx
mov dword [edi + 0x14], edx
inc dword [esi + 0x84]
jmp 0x425298
mov edi, dword [esp + 0x2c]
test ebp, ebp
jne 0x4252a5
mov ecx, dword [esp + 0x60]
add ecx, 0x20
jmp 0x4252cd
test ecx, ecx
je 0x4252ba
lea ecx, [esi + 0xe8]
call fcn.004268d0
test eax, eax
jne 0x425311
jmp 0x4252c7
cmp dword [edi + 4], 0
je 0x42530f
mov dword [esi + 0x24], 1
lea ecx, [esi + 0xe4]
call fcn.004268d0
test eax, eax
jne 0x425311
mov ecx, dword [edi + 0x1c]
xorps xmm0, xmm0
xor ebx, ebx
movlpd qword [esp + 0x40], xmm0
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x34], ebx
call fcn.00426940
test eax, eax
je 0x4247b5
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret