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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x6c
push ebx
mov ebx, dword [0x524aa8]
push esi
push edi
mov edi, ebx
mov byte [esp + 0x13], dl
mov dword [esp + 0x1c], ecx
mov eax, dword [edi + 0x3f88]
mov byte [eax + 0xb0], 1
mov esi, dword [edi + 0x3f88]
cmp byte [esi + 0xb3], 0
jne 0x430987
mov ecx, dword [esi + 0xec]
xor edx, edx
mov eax, dword [esi + 0xf4]
push dword [eax + ecx*4 - 4]
mov ecx, dword [esp + 0x20]
call fcn.0043b070
mov ecx, dword [esi]
add esp, 4
mov dword [esp + 0x18], eax
cmp dword [ecx + 0x3fc0], eax
jne 0x430312
push ecx
push dword [esp + 0x20]
mov edx, 0xb
mov ecx, eax
call fcn.0044fac0
mov ebx, dword [0x524aa8]
add esp, 8
mov eax, dword [esp + 0x1c]
mov ecx, eax
cmp eax, 0xffffffff
jae 0x430336
nop dword [eax]
mov dl, byte [ecx]
test dl, dl
je 0x430336
cmp dl, 0x23
jne 0x430330
cmp byte [ecx + 1], dl
je 0x430336
inc ecx
cmp ecx, 0xffffffff
jb 0x430320
movss xmm1, dword [ebx + 0x3cf4]
xorps xmm0, xmm0
cmp eax, ecx
jne 0x43034a
xorps xmm2, xmm2
jmp 0x430392
movss xmm3, dword [0x511b98]
movaps xmm2, xmm1
push ecx
push ecx
push eax
push ecx
mov ecx, dword [ebx + 0x3cf0]
lea eax, [esp + 0x58]
mov dword [esp], 0xbf800000
push eax
call fcn.00460490
movss xmm0, dword [esp + 0x48]
addss xmm0, dword [0x511afc]
movss xmm1, dword [esp + 0x4c]
cvttss2si eax, xmm0
xorps xmm0, xmm0
movd xmm2, eax
cvtdq2ps xmm2, xmm2
mov ecx, dword [ebp + 0xc]
movss dword [esp + 0x54], xmm1
movss dword [esp + 0x50], xmm2
movss xmm3, dword [ecx + 4]
ucomiss xmm3, xmm0
movss dword [esp + 0x44], xmm3
lahf
test ah, 0x44
jp 0x4303be
movaps xmm3, xmm1
movss dword [esp + 0x44], xmm1
movss xmm1, dword [ecx]
ucomiss xmm1, xmm0
movss dword [esp + 0x30], xmm1
lahf
test ah, 0x44
jp 0x4303da
movaps xmm1, xmm2
movss dword [esp + 0x30], xmm1
movss dword [esp + 0x20], xmm1
lea ecx, [esp + 0x20]
movss xmm1, dword [esi + 0xf8]
movss dword [esp + 0x28], xmm1
movss xmm1, dword [esi + 0xfc]
movss dword [esp + 0x5c], xmm1
addss xmm1, dword [esi + 0x130]
movss dword [esp + 0x24], xmm3
movss dword [esp + 0x48], xmm1
xorps xmm1, xmm1
call fcn.00448a00
mov ebx, dword [ebp + 8]
mov ecx, ebx
movss xmm2, dword [esp + 0x28]
shr ecx, 1
and cl, 1
mov dword [esp + 0x20], ecx
je 0x430444
movss xmm6, dword [esi + 0x208]
movss xmm1, dword [esi + 0x210]
jmp 0x43044f
movss xmm1, dword [esi + 0x200]
movaps xmm6, xmm2
mov eax, dword [ebp + 0xc]
xorps xmm4, xmm4
movss xmm0, dword [eax]
ucomiss xmm0, xmm4
lahf
test ah, 0x44
jnp 0x43046a
test ebx, 0x1000000
je 0x43047a
movss xmm5, dword [esp + 0x50]
subss xmm1, xmm6
maxss xmm5, xmm1
jmp 0x430480
movss xmm5, dword [esp + 0x30]
movss xmm7, dword [esp + 0x48]
addss xmm5, xmm6
movss dword [esp + 0x60], xmm2
movaps xmm0, xmm7
movss dword [esp + 0x64], xmm7
movss dword [esp + 0x68], xmm6
movss dword [esp + 0x6c], xmm7
movss dword [esp + 0x58], xmm5
movss dword [esp + 0x70], xmm5
addss xmm0, dword [esp + 0x44]
movss dword [esp + 0x48], xmm0
movss dword [esp + 0x5c], xmm0
movss dword [esp + 0x74], xmm0
test ebx, 0x4000000
jne 0x430543
test cl, cl
jne 0x4304dd
movss xmm4, dword [edi + 0x38f4]
movss xmm3, dword [edi + 0x38f8]
movaps xmm0, xmm4
mulss xmm0, dword [0x511acc]
cvttss2si eax, xmm0
movaps xmm0, xmm3
mulss xmm0, dword [0x511acc]
movd xmm2, eax
cvttss2si eax, xmm0
cvtdq2ps xmm2, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm4, xmm2
subss xmm3, xmm0
subss xmm6, xmm2
subss xmm7, xmm0
addss xmm4, xmm5
addss xmm3, dword [esp + 0x48]
movss dword [esp + 0x68], xmm6
movss dword [esp + 0x6c], xmm7
movss dword [esp + 0x70], xmm4
movss dword [esp + 0x74], xmm3
movss xmm0, dword [esi + 0x218]
movss dword [esp + 0x48], xmm0
movss xmm0, dword [esi + 0x220]
movss dword [esp + 0x30], xmm0
test cl, cl
je 0x43057b
mov eax, dword [esi + 0x208]
mov dword [esi + 0x218], eax
mov eax, dword [esi + 0x210]
mov dword [esi + 0x220], eax
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x68]
mov eax, ebx
shr eax, 3
and eax, 0xffffff01
mov dword [esp + 0x44], eax
movzx eax, al
shl eax, 2
push eax
push 0
call fcn.00448b60
add esp, 8
cmp byte [esp + 0x20], 0
je 0x4305c5
movss xmm0, dword [esp + 0x48]
movss dword [esi + 0x218], xmm0
movss xmm0, dword [esp + 0x30]
movss dword [esi + 0x220], xmm0
test al, al
je 0x430987
mov eax, dword [edi + 0x48a8]
shr eax, 2
and eax, 0xffffff01
cmp byte [esp + 0x44], 0
mov dword [esp + 0x48], eax
je 0x4305ef
test al, al
jne 0x4305ef
call fcn.00446340
cmp byte [esp + 0x20], 0
je 0x430614
cmp dword [esi + 0x198], 0
je 0x430606
call fcn.004382a0
jmp 0x430614
cmp dword [edi + 0x4c6c], 0
je 0x430614
call fcn.004359e0
mov ecx, ebx
shr ecx, 3
and ecx, 0x20000
mov edx, ecx
or edx, 0x100000
test ebx, 0x8000000
cmove edx, ecx
mov ecx, edx
or ecx, 0x10
test ebx, 0x400000
cmove ecx, edx
mov edx, ecx
or edx, 0x80
test ebx, 0x800000
cmove edx, ecx
mov ecx, edx
or ecx, 0x120
test bl, 4
cmove ecx, edx
test bl, 0x10
jne 0x43066e
test dword [edi + 0x48d4], 0x200
je 0x430674
or ecx, 0x1000
mov al, byte [esp + 0x13]
mov edx, dword [esp + 0x18]
mov byte [esp + 0x16], al
lea eax, [esp + 0x17]
push ecx
push eax
lea eax, [esp + 0x1d]
push eax
lea ecx, [esp + 0x74]
call fcn.0042e010
mov dl, al
add esp, 0xc
mov eax, dword [esp + 0x18]
mov byte [esp + 0x14], dl
test ebx, 0x200000
je 0x4306d4
cmp dword [edi + 0x4a0c], 0
je 0x4306d4
mov ecx, dword [edi + 0x4a10]
cmp ecx, dword [edi + 0x48a4]
jne 0x4306d4
cmp dword [edi + 0x4a0c], eax
jne 0x4306d4
mov dl, 1
mov byte [esp + 0x14], dl
mov byte [esp + 0x13], dl
jmp 0x4306ee
test dl, dl
jne 0x4306ee
cmp byte [esp + 0x15], dl
je 0x4307af
test ebx, 0x2000000
je 0x4307a5
cmp byte [edi + 0x4a33], 0
jne 0x430787
cmp dword [edi + 0x49f0], esi
jne 0x430787
mov ecx, dword [esi + 0x150]
cmp dword [edi + 0x4a24], ecx
jne 0x430787
movss xmm1, dword [esi + 0x108]
lea edx, [esp + 0x30]
movss xmm0, dword [esp + 0x68]
movss xmm2, dword [esi + 0x10c]
subss xmm0, xmm1
push edx
push dword [edi + 0x48a4]
mov edx, ecx
mov ecx, eax
movss dword [esp + 0x38], xmm0
movss xmm0, dword [esp + 0x74]
subss xmm0, xmm2
movss dword [esp + 0x3c], xmm0
movss xmm0, dword [esp + 0x78]
subss xmm0, xmm1
movss dword [esp + 0x40], xmm0
movss xmm0, dword [esp + 0x7c]
subss xmm0, xmm2
movss dword [esp + 0x44], xmm0
call fcn.0044a800
mov dl, byte [esp + 0x1c]
add esp, 8
mov byte [edi + 0x4a32], 1
test dl, dl
je 0x430794
mov ecx, dword [esp + 0x18]
call fcn.0043dde0
mov al, byte [esp + 0x13]
cmp al, byte [esp + 0x16]
je 0x4307a5
or dword [edi + 0x48d8], 8
mov al, byte [esp + 0x15]
test al, al
jne 0x4307ba
jmp 0x4307b3
mov al, byte [esp + 0x15]
cmp byte [esp + 0x13], 0
je 0x430833
cmp byte [esp + 0x17], 0
je 0x4307cc
test al, al
je 0x4307cc
mov ebx, 0x1a
jmp 0x4307d6
xor ebx, ebx
test al, al
setne bl
add ebx, 0x18
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x6c]
movss xmm1, dword [0x511b04]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x28], eax
mov eax, dword [0x524aa8]
push 0
push ecx
mov dword [esp + 0x3c], ecx
mov ecx, ebx
mov dword [esp + 0x34], edx
mov edx, dword [eax + 0x3f88]
mov dword [esp], 0
call fcn.0043b580
mov ecx, dword [edx + 0x26c]
push eax
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x38]
push eax
call fcn.0045c5f0
mov ebx, dword [ebp + 8]
mov eax, dword [esp + 0x18]
cmp dword [edi + 0x49f4], eax
jne 0x43084f
push 0xa
mov edx, eax
lea ecx, [esp + 0x6c]
call fcn.0043be30
add esp, 4
cmp byte [esp + 0x20], 0
je 0x430874
cmp dword [esi + 0x198], 0
je 0x430866
call fcn.00438350
jmp 0x430874
cmp dword [edi + 0x4c6c], 0
je 0x430874
call fcn.00435aa0
lea eax, [esp + 0x68]
push eax
lea eax, [edi + 0x3950]
push eax
lea eax, [esp + 0x58]
push eax
push ecx
push dword [esp + 0x2c]
lea edx, [esp + 0x6c]
lea ecx, [esp + 0x74]
call fcn.0043bb80
add esp, 0x14
cmp byte [esp + 0x14], 0
je 0x430969
test dword [esi + 0xc], 0x4000000
je 0x430969
test bl, 1
jne 0x430969
test byte [edi + 0x48d4], 0x20
jne 0x430969
mov edi, dword [0x524aa8]
mov ebx, dword [edi + 0x49c8]
sub ebx, 1
mov esi, ebx
js 0x430969
cmp esi, dword [edi + 0x49bc]
jge 0x430969
mov eax, dword [edi + 0x49d0]
lea ecx, [esi + esi*4]
mov edx, dword [edi + 0x49c4]
shl ecx, 3
mov eax, dword [ecx + eax]
cmp eax, dword [edx + ecx]
jne 0x430969
test esi, esi
jle 0x430937
lea eax, [edx - 0x24]
add eax, ecx
nop
mov edx, dword [eax + 0x28]
mov ecx, dword [eax]
test edx, edx
je 0x430937
test dword [edx + 0xc], 0x10000000
je 0x430937
test ecx, ecx
je 0x430937
test dword [ecx + 0xc], 0x400
jne 0x430937
dec esi
sub eax, 0x28
test esi, esi
jg 0x430910
test byte [edi + 0x5dcc], 4
je 0x43094f
push esi
push ebx
push str._popup__CloseCurrentPopup__d_____d_n
call fcn.0044f580
add esp, 0xc
mov dl, 1
mov ecx, esi
call fcn.00449e90
mov eax, dword [edi + 0x49f0]
test eax, eax
je 0x430969
mov byte [eax + 0x159], 1
cmp byte [esp + 0x44], 0
je 0x43097c
cmp byte [esp + 0x48], 0
jne 0x43097c
call fcn.004463a0
mov al, byte [esp + 0x14]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret