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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x118
mov eax, dword [0x675978]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov edi, edx
mov esi, ecx
mov edx, dword [0x67dc18]
mov dword [ebp - 0xc8], edi
mov dword [ebp - 0xd0], esi
mov ecx, dword [esi + 0x8c]
mov eax, dword [edx + 0x4040]
inc ecx
mov dword [ebp - 0xcc], eax
mov al, byte [esi + 0xa8]
mov dword [ebp - 0xbc], edx
mov dword [ebp - 0xd8], ecx
test al, 0x40
je 0x427b76
mov byte [ebp - 0xb6], 1
cmp ecx, dword [ebp - 0xcc]
je 0x427b7d
mov byte [ebp - 0xb6], 0
cmp dword [esi + 0x9c], 0
je 0x427b98
mov dword [ebp - 0xe0], 1
cmp ecx, dword [ebp - 0xcc]
je 0x427ba2
mov dword [ebp - 0xe0], 0
and al, 0xbf
mov dword [esi + 0x9c], 0
mov byte [ebp - 0xc2], al
mov byte [esi + 0xa8], al
mov eax, dword [esi + 0x18]
mov dword [ebp - 0xd4], esi
test eax, eax
je 0x427be5
nop word [eax + eax]
mov edi, eax
mov dword [ebp - 0xd4], edi
mov eax, dword [edi + 0x18]
test eax, eax
jne 0x427bd0
mov edi, dword [ebp - 0xc8]
mov eax, dword [edx + 0x4df4]
test eax, eax
je 0x427bfd
cmp dword [eax + 0x3d8], esi
sete ch
jmp 0x427c95
mov ecx, dword [edx + 0x4c28]
test ecx, ecx
je 0x427c93
mov eax, dword [ebp - 0xd4]
mov eax, dword [eax + 0x94]
cmp eax, dword [esi]
jne 0x427c93
mov ecx, dword [ecx + 0x354]
test dword [ecx + 0xc], 0x10000000
je 0x427c45
nop word [eax + eax]
mov eax, dword [ecx + 0x34c]
mov ecx, dword [eax + 0x354]
test dword [ecx + 0xc], 0x10000000
jne 0x427c30
mov eax, dword [ecx + 0x3dc]
test eax, eax
jne 0x427c60
mov eax, dword [ecx + 0x3d8]
test eax, eax
je 0x427c93
nop dword [eax]
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x427c70
mov eax, ecx
mov ecx, dword [eax + 0x18]
test ecx, ecx
jne 0x427c67
cmp eax, dword [ebp - 0xd4]
je 0x427dc7
mov eax, dword [eax + 0x74]
test eax, eax
je 0x427c93
mov eax, dword [eax + 0x354]
mov eax, dword [eax + 0x3d8]
test eax, eax
jne 0x427c60
xor ch, ch
mov eax, dword [esi + 0x10]
mov byte [ebp - 0xb5], ch
test eax, 0x3000
jne 0x428ca0
mov cl, byte [edi + 0xf8]
shr eax, 0xa
mov byte [ebp - 0xc2], cl
test al, 1
jne 0x427ccd
mov byte [edi + 0xf8], 0
mov dword [edi + 0x190], 1
mov ecx, dword [esi]
mov edi, dword [edx + 0x40d8]
mov dword [ebp - 0x8c], ecx
cmp dword [edx + 0x4118], ecx
jne 0x427cf3
push ecx
push 0
mov edx, 0xe
call fcn.0042d1e0
add esp, 8
lea eax, [ebp - 0x8c]
push eax
lea ecx, [edi + 0x12c]
call fcn.0042d420
mov eax, dword [esi + 0x30]
mov edi, eax
mov dword [ebp - 0x108], eax
mov dword [ebp - 0xdc], eax
test edi, edi
jne 0x427d2a
mov ecx, esi
call fcn.00428d20
mov edi, dword [esi + 0x30]
mov dword [ebp - 0xdc], edi
mov ah, byte [ebp - 0xb5]
mov cl, byte [esi + 0xa8]
mov al, ah
and cl, 0xfd
mov dword [ebp - 0x104], 0
add al, al
or cl, al
test dword [esi + 0x10], 0x4000
mov byte [esi + 0xa8], cl
jne 0x427e6c
mov edx, dword [ebp - 0xbc]
cmp dword [edx + 0x3998], 0xffffffff
je 0x427e6c
mov byte [ebp - 0x8d], 1
call fcn.0041cde0
test al, al
je 0x427e79
mov eax, dword [edi + 0x18]
movss xmm0, dword [esi + 0x38]
movss xmm3, dword [esi + 0x34]
mov dword [ebp - 0xc0], eax
mov eax, dword [0x67dc18]
mov dword [ebp - 0x8c], eax
cmp dword [eax + 0x3998], 0
movss xmm2, dword [eax + 0x39b0]
addss xmm2, xmm2
addss xmm2, dword [eax + 0x3e24]
addss xmm2, xmm0
jne 0x427dce
xorps xmm4, xmm4
jmp 0x427ddf
mov ch, 1
jmp 0x427c95
movss xmm1, dword [esi + 0x3c]
movss xmm4, dword [0x657af8]
addss xmm3, xmm1
or dword [eax + 0x4ac0], 1
movss dword [eax + 0x4ad4], xmm3
movss dword [eax + 0x4ad8], xmm2
movss dword [eax + 0x4adc], xmm4
mov dword [eax + 0x4ae0], 0
mov dword [eax + 0x4ac4], 1
mov byte [eax + 0x4b00], 1
call fcn.0041d360
test al, al
je 0x427e42
mov eax, dword [ebp - 0x8c]
or byte [esi + 0xa8], 2
push edi
push esi
push eax
mov eax, dword [eax + 0x5254]
call eax
add esp, 0xc
call fcn.0041d3e0
mov eax, dword [edi + 0x18]
test eax, eax
je 0x427e5a
xor ecx, ecx
cmp eax, dword [ebp - 0xc0]
cmovne ecx, eax
mov dword [ebp - 0x104], ecx
mov al, byte [esi + 0xa8]
shr al, 1
and al, 1
or byte [ebp - 0xb5], al
jmp 0x427e79
mov byte [ebp - 0x8d], 0
mov byte [ebp - 0xb5], ah
lea eax, [ebp - 0x110]
mov dword [ebp - 0xf8], 0
push eax
lea eax, [ebp - 0xf8]
mov dword [ebp - 0xf4], 0
push eax
xorps xmm0, xmm0
mov dword [ebp - 0x110], 0
lea eax, [ebp - 0xb0]
mov dword [ebp - 0x10c], 0
push eax
lea edx, [ebp - 0xa0]
mov ecx, esi
movups xmmword [ebp - 0xa0], xmm0
movups xmmword [ebp - 0xb0], xmm0
call fcn.00428f70
mov eax, dword [edi]
xor ecx, ecx
add esp, 0xc
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xc0], ecx
cmp dword [esi + 0x24], ecx
jle 0x427f62
nop dword [eax]
mov eax, dword [esi + 0x2c]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0x8c], eax
mov eax, dword [eax + 0xb4]
test eax, eax
je 0x427f3b
mov edx, dword [edi]
xor ecx, ecx
test edx, edx
jle 0x427f3b
mov eax, dword [edi + 8]
mov edi, dword [ebp - 0x8c]
mov esi, dword [edi + 0xb4]
cmp dword [eax], esi
mov edi, dword [ebp - 0xdc]
mov esi, dword [ebp - 0xd0]
je 0x427f37
inc ecx
add eax, 0x30
cmp ecx, edx
jl 0x427f11
jmp 0x427f3b
test eax, eax
jne 0x427f50
push dword [ebp - 0x8c]
mov edx, 0x400000
mov ecx, edi
call fcn.00444650
add esp, 4
mov ecx, dword [ebp - 0xc0]
inc ecx
mov dword [ebp - 0xc0], ecx
cmp ecx, dword [esi + 0x24]
jl 0x427ef0
cmp byte [ebp - 0xb5], 0
mov edx, dword [ebp - 0xbc]
je 0x427f7d
mov eax, dword [edx + 0x4040]
mov dword [esi + 0x90], eax
mov eax, dword [ebp - 0xc8]
cmp byte [eax + 0xf6], 0
je 0x427f93
mov ecx, 0xc
jmp 0x427fa1
xor ecx, ecx
cmp byte [ebp - 0xb5], cl
setne cl
add ecx, 0xa
movss xmm1, dword [0x657af8]
call fcn.0040b870
movss xmm5, dword [edx + 0x3a50]
movups xmm4, xmmword [ebp - 0xa0]
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xc8]
movss xmm0, dword [eax + 0x4c]
movss xmm1, dword [eax + 0x54]
addss xmm0, xmm5
addss xmm1, dword [eax + 0x4c]
comiss xmm0, xmm4
subss xmm1, xmm5
movaps xmm0, xmm4
shufps xmm0, xmm4, 0xaa
setae cl
comiss xmm0, xmm1
movss xmm1, dword [eax + 0x50]
movaps xmm0, xmm4
addss xmm1, xmm5
shufps xmm0, xmm4, 0x55
setae dh
shufps xmm4, xmm4, 0xff
mov byte [ebp - 0xc1], dh
comiss xmm1, xmm0
movss xmm0, dword [eax + 0x58]
addss xmm0, dword [eax + 0x50]
setae dl
subss xmm0, xmm5
comiss xmm4, xmm0
setae ch
test dl, dl
je 0x428034
mov eax, 0x110
test cl, cl
jne 0x428039
mov eax, 0x100
test dl, dl
je 0x42804b
mov dword [ebp - 0x8c], 0x20
test dh, dh
jne 0x428055
mov dword [ebp - 0x8c], 0
test ch, ch
je 0x428064
test cl, cl
je 0x428064
mov edx, 0x40
jmp 0x428066
xor edx, edx
test ch, ch
je 0x42807a
cmp byte [ebp - 0xc1], 0
je 0x42807a
mov ecx, 0x80
jmp 0x42807c
xor ecx, ecx
or eax, ecx
or eax, edx
or eax, dword [ebp - 0x8c]
push eax
mov eax, dword [ebp - 0xc8]
push ecx
lea ecx, [ebp - 0x98]
movss xmm0, dword [eax + 0x84]
movss dword [esp], xmm0
push dword [ebp - 0xc0]
push ecx
lea ecx, [ebp - 0xa0]
push ecx
mov ecx, dword [eax + 0x2b8]
call fcn.00438360
cmp byte [ebp - 0x8d], 0
je 0x42819f
mov eax, dword [ebp - 0xc8]
xor edx, edx
mov ecx, dword [eax + 0x12c]
mov eax, dword [eax + 0x134]
push dword [eax + ecx*4 - 4]
mov ecx, str.COLLAPSE
call fcn.0040b020
mov ecx, dword [ebp - 0xc8]
add esp, 4
mov dword [ebp - 0x8c], eax
mov ecx, dword [ecx]
cmp dword [ecx + 0x4118], eax
jne 0x42811d
push ecx
push str.COLLAPSE
mov edx, 0xc
mov ecx, eax
call fcn.0042d1e0
mov eax, dword [ebp - 0x8c]
add esp, 8
push esi
lea edx, [ebp - 0xf8]
mov ecx, eax
call fcn.0043fe90
add esp, 4
test al, al
je 0x428137
call fcn.0041ce80
mov eax, dword [0x67dc18]
mov ecx, dword [eax + 0x4134]
test ecx, ecx
je 0x428157
cmp ecx, dword [eax + 0x4a70]
jne 0x428157
mov eax, dword [edi + 0x14]
mov dword [ebp - 0x104], eax
mov ecx, 0x11000
call fcn.0040e790
test al, al
mov eax, dword [ebp - 0xbc]
je 0x4281a5
movss xmm0, dword [eax + 0x4128]
comiss xmm0, dword [0x657ab4]
jbe 0x4281a5
mov eax, dword [0x67dc18]
mov ecx, str.Missing_Text
mov eax, dword [eax + 0x52d0]
test eax, eax
cmovne ecx, eax
push ecx
push 0x652d7c
call fcn.0041cc60
add esp, 8
mov eax, dword [ebp - 0xbc]
mov ecx, dword [edi]
mov dword [ebp - 0xf4], ecx
lea edx, [ecx - 1]
test edx, edx
js 0x428200
lea esi, [edx + edx*2]
shl esi, 4
nop word [eax + eax]
mov ecx, dword [edi + 8]
mov ecx, dword [ecx + esi + 4]
test ecx, 0x400000
je 0x4281ee
mov eax, dword [edi + 8]
and ecx, 0xffbfffff
mov dword [eax + esi + 4], ecx
mov ecx, edx
sub esi, 0x30
mov dword [ebp - 0xf4], ecx
sub edx, 1
jns 0x4281c0
jmp 0x4281f4
mov ecx, dword [ebp - 0xf4]
mov esi, dword [ebp - 0xd0]
mov eax, dword [ebp - 0xbc]
mov edx, dword [edi]
cmp edx, ecx
jle 0x42836a
mov ecx, dword [eax + 0x5308]
mov dword [ebp - 0xc0], ecx
test ecx, 0x100
je 0x428268
mov eax, dword [ebp - 0xf4]
mov ecx, str.__will_sort_
inc eax
mov dword [ebp - 0x8c], 0x64e2f4
cmp edx, eax
cmovle ecx, dword [ebp - 0x8c]
sub edx, dword [ebp - 0xf4]
push ecx
push edx
push dword [esi]
push str._docking__In_node_0x_08X:__d_new_appearing_tabs:_s_n
call fcn.0042cd00
mov eax, dword [ebp - 0xbc]
add esp, 0x10
mov edx, dword [edi]
mov ecx, dword [eax + 0x5308]
mov dword [ebp - 0xc0], ecx
mov eax, dword [ebp - 0xf4]
cmp eax, edx
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0xbc]
jge 0x428305
mov edx, dword [ebp - 0xf4]
lea esi, [edx + edx*2]
shl esi, 4
nop
mov edx, dword [edi + 8]
add edx, esi
test ecx, 0x100
je 0x4282e6
mov eax, dword [edx + 8]
test eax, eax
je 0x4282b3
movsx eax, word [eax + 0x3b6]
mov dword [ebp - 0xc0], eax
jmp 0x4282bd
mov dword [ebp - 0xc0], 0xffffffff
mov ecx, edi
call fcn.00444620
push dword [ebp - 0xc0]
push eax
push dword [edx]
push str._docking____Tab_0x_08X__s_Order__d_n
call fcn.0042cd00
mov eax, dword [ebp - 0xbc]
add esp, 0x10
mov ecx, dword [eax + 0x5308]
inc dword [ebp - 0x8c]
add esi, 0x30
mov edx, dword [edi]
cmp dword [ebp - 0x8c], edx
jl 0x428290
mov esi, dword [ebp - 0xd0]
mov dword [ebp - 0xc0], ecx
test dword [ebp - 0xc0], 0x100
je 0x42833c
mov eax, dword [eax + 0x4c28]
test eax, eax
je 0x428323
mov eax, dword [eax + 0xb4]
jmp 0x428326
or eax, 0xffffffff
push eax
push dword [esi + 0x98]
push str._docking__SelectedTabId__0x_08X__NavWindow__TabId__0x_08X_n
call fcn.0042cd00
mov edx, dword [edi]
add esp, 0xc
mov ecx, dword [ebp - 0xf4]
lea eax, [ecx + 1]
cmp edx, eax
jle 0x42836a
sub edx, ecx
cmp edx, 1
jbe 0x42836a
push 0x427990
lea eax, [ecx + ecx*2]
push 0x30
shl eax, 4
add eax, dword [edi + 8]
push edx
push eax
call fcn.005c7760
add esp, 0x10
mov edx, dword [ebp - 0xbc]
mov eax, dword [edx + 0x4c28]
test eax, eax
je 0x428391
mov eax, dword [eax + 0x354]
cmp dword [eax + 0x3d8], esi
jne 0x428391
mov eax, dword [eax + 0xb4]
mov dword [edi + 0x14], eax
cmp dword [ebp - 0x108], 0
jne 0x4283c0
mov edx, dword [esi + 0x98]
test edx, edx
je 0x4283c0
mov esi, dword [edi]
xor ecx, ecx
test esi, esi
jle 0x4283c0
mov eax, dword [edi + 8]
nop
cmp dword [eax], edx
je 0x42877e
inc ecx
add eax, 0x30
cmp ecx, esi
jl 0x4283b0
mov eax, dword [edi]
cmp eax, dword [ebp - 0xe4]
jle 0x4283e2
lea ecx, [eax + eax*2]
mov eax, dword [edi + 8]
add ecx, ecx
mov eax, dword [eax + ecx*8 - 0x28]
mov eax, dword [eax + 0xb4]
mov dword [edi + 0x18], eax
mov dword [edi + 0x14], eax
mov ecx, dword [ebp - 0xc8]
mov eax, 0x500043
mov dword [ebp - 0x8c], eax
cmp byte [ecx + 0xf6], 0
jne 0x428411
cmp byte [ebp - 0xb5], 0
mov ecx, 0x700043
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
mov eax, dword [0x67dc18]
xor edx, edx
mov esi, dword [eax + 0x40d8]
mov ecx, dword [esi + 0x12c]
mov eax, dword [esi + 0x134]
push dword [eax + ecx*4 - 4]
mov ecx, str.TabBar
call fcn.0040b020
mov ecx, dword [esi]
add esp, 4
mov dword [ebp - 0xe4], eax
cmp dword [ecx + 0x4118], eax
jne 0x428466
push ecx
push str.TabBar
mov edx, 0xc
mov ecx, eax
call fcn.0042d1e0
mov eax, dword [ebp - 0xe4]
add esp, 8
mov esi, dword [ebp - 0xd0]
lea edx, [ebp - 0xb0]
mov dword [edi + 0x10], eax
mov ecx, edi
mov eax, dword [ebp - 0xc8]
push dword [ebp - 0x8c]
movss xmm0, dword [eax + 0x88]
addss xmm0, dword [esi + 0x34]
movss dword [edi + 0x60], xmm0
movss xmm0, dword [esi + 0x3c]
addss xmm0, dword [esi + 0x34]
subss xmm0, dword [eax + 0x88]
movss dword [edi + 0x64], xmm0
call fcn.00443320
add esp, 4
lea edi, [ebp - 0x88]
mov esi, 8
nop
mov ecx, edi
call fcn.00407ad0
add edi, 0x10
sub esi, 1
jne 0x4284c0
mov ecx, dword [ebp - 0xbc]
xor edx, edx
mov esi, dword [ebp - 0xd0]
mov edi, dword [ebp - 0xdc]
mov dword [ebp - 0x8c], edx
movups xmm1, xmmword [ecx + 0x3a64]
movups xmmword [ebp - 0x88], xmm1
movups xmm0, xmmword [ecx + 0x3c74]
movups xmmword [ebp - 0x78], xmm0
movups xmm0, xmmword [ecx + 0x3c84]
movups xmmword [ebp - 0x68], xmm0
movups xmm0, xmmword [ecx + 0x3c94]
movups xmmword [ebp - 0x58], xmm0
movups xmm0, xmmword [ecx + 0x3ca4]
movups xmmword [ebp - 0x48], xmm0
movups xmm0, xmmword [ecx + 0x3cb4]
movups xmmword [ebp - 0x38], xmm0
movups xmm0, xmmword [ecx + 0x3cc4]
movups xmmword [ebp - 0x28], xmm0
movups xmm0, xmmword [ecx + 0x3cd4]
mov dword [esi + 0x78], 0
movups xmmword [ebp - 0x18], xmm0
cmp dword [esi + 0x24], edx
jle 0x4287be
movss xmm1, dword [0x657a70]
nop dword [eax]
cmp byte [ebp - 0xb6], 0
mov eax, dword [esi + 0x2c]
mov esi, dword [eax + edx*4]
mov dword [ebp - 0x108], esi
jne 0x428583
mov eax, dword [ebp - 0xe0]
cmp eax, dword [esi + 0xb4]
jne 0x428599
cmp byte [esi + 0xfe], 0
je 0x428599
test dword [esi + 0xc], 0x40000
je 0x428799
mov eax, dword [esi + 0x284]
inc eax
cmp eax, dword [ecx + 0x4040]
jge 0x4285ba
mov eax, dword [ebp - 0xcc]
cmp dword [ebp - 0xd8], eax
je 0x428799
mov edx, dword [esi + 0x2c]
mov eax, dword [esi + 0xc]
or edx, 1
and eax, 0x40000
mov eax, dword [edi + 0xc]
mov edi, 0x64eb90
cmove edx, dword [esi + 0x2c]
mov ecx, edx
or ecx, 4
and al, 8
lea eax, [esi + 0x3b8]
cmove ecx, edx
mov dword [ebp - 0xe4], eax
mov edx, dword [ebp - 0xbc]
mov esi, eax
mov dword [ebp - 0xc0], ecx
mov ecx, dword [esi]
add esi, 4
movzx eax, cl
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x658010]
mov eax, ecx
shr eax, 8
movzx eax, al
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x100], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x658010]
mov eax, ecx
shr ecx, 0x18
shr eax, 0x10
movzx eax, al
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0xfc], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x658010]
mov eax, dword [edi]
add edi, 4
add eax, eax
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0xf8], xmm0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
addsd xmm0, qword [ecx*8 + 0x658010]
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0xf4], xmm0
movups xmm0, xmmword [ebp - 0x100]
movups xmmword [edx + eax*8 + 0x3a64], xmm0
cmp edi, 0x64ebb0
jl 0x4285f8
mov esi, dword [ebp - 0x108]
lea eax, [ebp - 0x8d]
mov edi, dword [ebp - 0xdc]
xor ecx, ecx
push esi
push dword [ebp - 0xc0]
cmp byte [esi + 0xfe], cl
mov edx, dword [esi + 4]
cmove eax, ecx
mov byte [ebp - 0x8d], 1
push eax
mov ecx, edi
call fcn.00444cf0
mov ecx, dword [ebp - 0xd0]
add esp, 0xc
cmp byte [ebp - 0x8d], 0
jne 0x428719
mov eax, dword [esi + 0xb4]
mov dword [ecx + 0x9c], eax
mov eax, dword [edi + 0x1c]
cmp eax, dword [esi + 0xb4]
jne 0x428727
mov dword [ecx + 0x78], esi
mov ecx, dword [ebp - 0xbc]
mov eax, dword [ecx + 0x4a78]
mov dword [esi + 0x3e4], eax
movups xmm0, xmmword [ecx + 0x4a7c]
movups xmmword [esi + 0x3e8], xmm0
mov eax, dword [ecx + 0x4c28]
test eax, eax
je 0x428791
cmp dword [eax + 0x354], esi
jne 0x428791
test byte [esi + 0x194], 2
movss xmm1, dword [0x657a70]
jne 0x428799
mov edx, dword [ebp - 0xc8]
mov eax, dword [esi + 0xb4]
mov dword [edx + 0x374], eax
jmp 0x428799
test eax, eax
je 0x4283c0
mov dword [edi + 0x18], edx
mov dword [edi + 0x14], edx
jmp 0x4283e2
movss xmm1, dword [0x657a70]
mov eax, dword [ebp - 0x8c]
mov esi, dword [ebp - 0xd0]
inc eax
mov dword [ebp - 0x8c], eax
mov edx, eax
cmp eax, dword [esi + 0x24]
jl 0x428560
movups xmm1, xmmword [ebp - 0x88]
movups xmmword [ecx + 0x3a64], xmm1
movups xmm0, xmmword [ebp - 0x78]
movups xmmword [ecx + 0x3c74], xmm0
movups xmm0, xmmword [ebp - 0x68]
movups xmmword [ecx + 0x3c84], xmm0
movups xmm0, xmmword [ebp - 0x58]
movups xmmword [ecx + 0x3c94], xmm0
movups xmm0, xmmword [ebp - 0x48]
movups xmmword [ecx + 0x3ca4], xmm0
movups xmm0, xmmword [ebp - 0x38]
movups xmmword [ecx + 0x3cb4], xmm0
movups xmm0, xmmword [ebp - 0x28]
movups xmmword [ecx + 0x3cc4], xmm0
movups xmm0, xmmword [ebp - 0x18]
movups xmmword [ecx + 0x3cd4], xmm0
mov eax, dword [esi + 0x78]
test eax, eax
je 0x428831
cmp byte [ebp - 0xb5], 0
mov ecx, dword [ebp - 0xd4]
jne 0x42882e
cmp dword [ecx + 0x78], 0
jne 0x428831
mov dword [ecx + 0x78], eax
mov al, byte [esi + 0xa8]
and al, 8
je 0x42884f
mov ecx, dword [esi + 0x78]
test ecx, ecx
je 0x42884f
cmp byte [ecx + 0xfe], 0
je 0x42884f
mov cl, 1
jmp 0x428851
xor cl, cl
mov byte [ebp - 0xb6], cl
test al, al
je 0x428aab
test cl, cl
jne 0x428936
mov ecx, dword [0x67dc18]
mov eax, dword [ecx + 0x4a30]
or eax, 0x400
mov dword [ecx + 0x4a30], eax
add ecx, 0x4b8c
mov dword [ebp - 0xd8], eax
lea eax, [ebp - 0xd8]
push eax
call fcn.0042d420
mov eax, dword [ebp - 0xbc]
lea ecx, [ebp - 0xb4]
push ecx
mov dword [ebp - 0xb4], 0
movss xmm0, dword [eax + 0x3a64]
movss dword [ebp - 0x100], xmm0
movss xmm0, dword [eax + 0x3a68]
movss dword [ebp - 0xfc], xmm0
movss xmm0, dword [eax + 0x3a6c]
movss dword [ebp - 0xf8], xmm0
movss xmm0, dword [eax + 0x3a70]
mulss xmm0, dword [0x657aa4]
mov eax, dword [0x67dc18]
mov dword [ebp - 0xd8], eax
movss dword [ebp - 0xf4], xmm0
movups xmm0, xmmword [eax + 0x3a64]
lea ecx, [eax + 0x4b5c]
movups xmmword [ebp - 0xb0], xmm0
call fcn.0042de10
mov eax, dword [ebp - 0xd8]
cmp dword [eax + 0x4b58], 0
je 0x428936
movups xmm0, xmmword [ebp - 0x100]
movups xmmword [eax + 0x3a64], xmm0
mov eax, dword [ebp - 0xc8]
xor edx, edx
mov ecx, dword [eax + 0x12c]
mov eax, dword [eax + 0x134]
push dword [eax + ecx*4 - 4]
mov ecx, str.CLOSE
call fcn.0040b020
mov ecx, dword [ebp - 0xc8]
add esp, 4
mov dword [ebp - 0xd8], eax
mov ecx, dword [ecx]
cmp dword [ecx + 0x4118], eax
jne 0x42898c
push ecx
push str.CLOSE
mov edx, 0xc
mov ecx, eax
call fcn.0042d1e0
mov eax, dword [ebp - 0xd8]
add esp, 8
lea edx, [ebp - 0x110]
mov ecx, eax
call fcn.0043fb40
test al, al
je 0x428a09
or byte [esi + 0xa8], 0x40
xor edx, edx
cmp dword [edi], edx
jle 0x428a09
xor eax, eax
mov dword [ebp - 0xcc], eax
mov ecx, dword [edi + 8]
add ecx, eax
test dword [ecx + 4], 0x200000
jne 0x4289fb
test dword [ecx + 4], 0x101
jne 0x4289f1
mov byte [ecx + 0x2c], 1
mov eax, dword [edi + 0x1c]
cmp eax, dword [ecx]
mov eax, dword [ebp - 0xcc]
jne 0x4289fb
mov dword [ecx + 0xc], 0xffffffff
mov dword [edi + 0x18], 0
mov dword [edi + 0x14], 0
jmp 0x4289fb
mov ecx, dword [ecx]
cmp dword [edi + 0x1c], ecx
je 0x4289fb
mov dword [edi + 0x18], ecx
inc edx
add eax, 0x30
mov dword [ebp - 0xcc], eax
cmp edx, dword [edi]
jl 0x4289b2
cmp byte [ebp - 0xb6], 0
jne 0x428aab
mov edx, dword [0x67dc18]
mov dword [ebp - 0xe0], 1
mov eax, dword [edx + 0x4b5c]
cmp eax, 1
jge 0x428a3b
mov dword [ebp - 0xe0], eax
test eax, eax
jle 0x428a8f
mov esi, dword [0x67dc18]
mov edi, dword [ebp - 0xe0]
nop word [eax + eax]
mov eax, dword [esi + 0x4b5c]
dec edi
mov ecx, dword [esi + 0x4b64]
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 - 0x14]
movups xmm0, xmmword [ecx + edx*4 - 0x10]
add eax, eax
movups xmmword [esi + eax*8 + 0x3a64], xmm0
dec dword [esi + 0x4b5c]
test edi, edi
jg 0x428a50
mov edi, dword [ebp - 0xdc]
mov esi, dword [ebp - 0xd0]
mov edx, dword [0x67dc18]
dec dword [edx + 0x4b8c]
mov ecx, dword [edx + 0x4b8c]
mov eax, dword [edx + 0x4b94]
mov eax, dword [eax + ecx*4 - 4]
mov dword [edx + 0x4a30], eax
mov eax, dword [ebp - 0xc8]
xor edx, edx
mov ecx, dword [eax + 0x12c]
mov eax, dword [eax + 0x134]
push dword [eax + ecx*4 - 4]
mov ecx, str.TITLEBAR
call fcn.0040b020
mov edx, eax
add esp, 4
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0xcc], edx
mov ecx, dword [eax]
cmp dword [ecx + 0x4118], edx
jne 0x428b07
push ecx
mov ecx, dword [ebp - 0xcc]
mov edx, 0xc
push str.TITLEBAR
call fcn.0042d1e0
mov edx, dword [ebp - 0xcc]
add esp, 8
mov eax, dword [ebp - 0xbc]
mov ecx, dword [eax + 0x411c]
test ecx, ecx
je 0x428b27
cmp ecx, edx
je 0x428b27
cmp dword [eax + 0x4134], edx
jne 0x428c08
mov eax, dword [0x67dc18]
cmp dword [eax + 0x4134], edx
jne 0x428b3a
mov dword [eax + 0x4138], edx
cmp dword [eax + 0x415c], edx
jne 0x428b49
mov byte [eax + 0x4160], 1
push 0x1000
lea eax, [ebp - 0xc1]
push eax
push 0
lea ecx, [ebp - 0xa0]
call fcn.0043ee10
mov eax, dword [ebp - 0xbc]
add esp, 0xc
mov ecx, dword [ebp - 0xcc]
cmp dword [eax + 0x411c], ecx
jne 0x428b7f
mov dword [eax + 0x4a70], ecx
cmp byte [ebp - 0xc1], 0
je 0x428c08
mov eax, dword [0x67dc18]
cmp byte [eax + 0xbc], 0
je 0x428bd0
movss xmm0, dword [eax + 0x2b08]
xorps xmm1, xmm1
comiss xmm1, xmm0
ja 0x428bd0
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x428bd0
xor edx, edx
mov ecx, 0x28f
call fcn.0041bc30
test al, al
je 0x428bd0
mov eax, dword [edi + 0x14]
mov edx, eax
mov dword [ebp - 0x104], eax
jmp 0x428bd3
mov edx, dword [edi + 0x14]
test edx, edx
je 0x428c08
xor ecx, ecx
cmp dword [edi], ecx
jle 0x428c08
mov eax, dword [edi + 8]
cmp dword [eax], edx
je 0x428bee
inc ecx
add eax, 0x30
cmp ecx, dword [edi]
jl 0x428be0
jmp 0x428c08
test eax, eax
je 0x428c08
mov ecx, dword [eax + 8]
test ecx, ecx
jne 0x428bfc
mov ecx, dword [esi + 0x74]
push 0
mov edx, esi
call fcn.0040f080
add esp, 4
mov ecx, dword [edi + 0x18]
test ecx, ecx
cmove ecx, dword [ebp - 0x104]
test ecx, ecx
je 0x428c4d
mov edx, dword [edi]
xor eax, eax
test edx, edx
jle 0x428c4d
mov edi, dword [edi + 8]
cmp dword [edi], ecx
je 0x428c31
inc eax
add edi, 0x30
cmp eax, edx
jl 0x428c23
jmp 0x428c4d
test edi, edi
je 0x428c4d
mov ecx, dword [edi + 8]
test ecx, ecx
je 0x428c4d
xor edx, edx
call fcn.004187f0
mov ecx, dword [edi + 8]
xor dl, dl
call fcn.0041ea70
call fcn.00443650
mov eax, dword [0x67dc18]
mov eax, dword [eax + 0x40d8]
dec dword [eax + 0x12c]
mov eax, dword [esi + 0x10]
shr eax, 0xa
test al, 1
jne 0x428d01
mov eax, dword [ebp - 0xc8]
mov cl, byte [ebp - 0xc2]
mov dword [eax + 0x190], 0
mov byte [eax + 0xf8], cl
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005b6a10
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp dword [esi + 0x24], 0
jle 0x428cad
mov eax, dword [esi + 0x2c]
mov edi, dword [eax]
jmp 0x428caf
xor edi, edi
mov cl, byte [ebp - 0xc2]
mov al, ch
and cl, 0xfd
mov dword [esi + 0x78], edi
add al, al
or cl, al
mov byte [esi + 0xa8], cl
test ch, ch
je 0x428cd7
mov eax, dword [edx + 0x4040]
mov dword [esi + 0x90], eax
test edi, edi
je 0x428d01
mov eax, dword [ebp - 0xd4]
test ch, ch
jne 0x428ceb
cmp dword [eax + 0x78], 0
jne 0x428cee
mov dword [eax + 0x78], edi
mov ecx, dword [esi + 0x30]
test ecx, ecx
je 0x428d01
mov eax, dword [esi + 0x78]
mov eax, dword [eax + 0xb4]
mov dword [ecx + 0x1c], eax
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.005b6a10
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret