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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x2c4
mov edx, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [esp + 0xc], ecx
mov ecx, dword [ebp + 8]
push ebx
push esi
mov esi, dword [ebp + 0x10]
movzx eax, word [ecx]
mov dword [esp + 0xc], edx
mov edx, dword [sym.imp.USER32.dll_GetWindowLongW]
mov byte [esp + 0x18], 0
mov dword [esp + 0x28], edx
push edi
mov edi, dword [ebp + 0xc]
test ax, ax
je 0x46b958
movss xmm0, dword [esp + 0x30]
mov edx, eax
mov eax, dword [sym.imp.USER32.dll_EnableWindow]
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0x48], eax
mov eax, dword [sym.imp.USER32.dll_ShowWindow]
mov dword [esp + 0x4c], eax
mov eax, dword [sym.imp.GDI32.dll_DeleteObject]
mov dword [esp + 0x50], eax
mov eax, dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov dword [esp + 0x58], eax
mov eax, dword [sym.imp.USER32.dll_GetClassInfoExW]
mov dword [esp + 0x60], eax
mov eax, dword [sym.imp.KERNEL32.DLL_MulDiv]
mov dword [esp + 0x44], eax
mov al, byte [esp + 0x17]
mov byte [esp + 0xf], al
movss dword [esp + 0x30], xmm0
mov dword [esp + 0x28], ebx
cmp dx, 0x2d
jne 0x469cdf
xor bl, bl
jmp 0x469cea
movzx eax, dx
mov bl, 1
cmp dx, 0x2b
jne 0x469cf1
movzx eax, word [ecx + 2]
add ecx, 2
test ax, ax
je 0x46b954
mov edi, ecx
movzx edx, ax
nop
cmp dx, 0x20
je 0x469d1a
cmp dx, 9
je 0x469d1a
movzx eax, word [edi + 2]
add edi, 2
mov edx, eax
test ax, ax
jne 0x469d00
mov dword [esp + 0x40], edi
cmp edi, ecx
mov edi, dword [ebp + 0xc]
je case.0x46b14c.7
mov eax, dword [esp + 0x40]
mov esi, 0x101
sub eax, ecx
sar eax, 1
inc eax
cmp eax, esi
cmovb esi, eax
lea eax, [esp + 0x68]
dec esi
push esi
push ecx
push eax
call fcn.004aa9a4
add esp, 0xc
xor eax, eax
mov word [esp + esi*2 + 0x68], ax
lea eax, [esp + 0x68]
push 0x4db1c0
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x469d75
mov byte [edi + 0x18d], 1
jmp 0x46b24d
lea eax, [esp + 0x68]
push 0x4db1d0
push eax
call fcn.0049f3a1
mov esi, dword [ebp + 0x10]
add esp, 8
test eax, eax
jne 0x469db1
cmp byte [esi + 0x30], 0xc
je 0x469db1
mov cl, byte [esi + 0x31]
mov al, cl
or cl, 2
and al, 0xfd
movzx ecx, cl
test bl, bl
movzx eax, al
cmove ecx, eax
mov byte [esi + 0x31], cl
jmp case.0x46b14c.7
push 7
lea eax, [esp + 0x6c]
push 0x4db1e4
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x469e3e
lea eax, [esp + 0x76]
push 0x4db1f4
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x469dec
movzx eax, bl
add eax, eax
mov dword [edi + 0x68], eax
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 0xa
jne 0x469e0a
mov ecx, dword [edi + 0x10]
mov eax, ecx
and eax, 0xfffffffb
or ecx, 4
test bl, bl
cmove ecx, eax
mov dword [edi + 0x10], ecx
jmp case.0x46b14c.7
cmp word [esp + 0x76], 0
je 0x469e33
lea ecx, [esp + 0x76]
call fcn.004820d0
mov dword [edi + 0x68], eax
cmp eax, 0xffffffff
jne case.0x46b14c.7
mov dword [edi + 0x68], 2
jmp case.0x46b14c.7
movzx eax, bl
mov dword [edi + 0x68], eax
jmp case.0x46b14c.7
push 6
lea eax, [esp + 0x6c]
push 0x4daae0
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x469ed1
test bl, bl
je case.0x46b14c.7
cmp byte [esi + 0x30], 0xd
je 0x469e85
lea ecx, [esp + 0x74]
call fcn.004820d0
mov dword [edi + 0x30], eax
cmp eax, 1
jge case.0x46b14c.7
mov dword [edi + 0x30], 0
jmp case.0x46b14c.7
lea eax, [esp + 0x74]
push 0x4db200
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x469ea8
mov eax, 2
mov dword [edi + 0x30], eax
jmp case.0x46b14c.7
push 1
lea edx, [edi + 0x13c]
lea ecx, [esp + 0x78]
call fcn.004814f0
add esp, 4
test eax, eax
je 0x46b923
mov eax, 1
mov dword [edi + 0x30], eax
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db0b0
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x469f02
test bl, bl
je 0x469ef6
or dword [edi], 0x800000
jmp case.0x46b14c.7
or dword [edi + 4], 0x800000
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db20c
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x469f33
test bl, bl
je 0x469f27
or dword [edi], 0x200000
jmp case.0x46b14c.7
or dword [edi + 4], 0x200000
jmp case.0x46b14c.7
push 7
lea eax, [esp + 0x6c]
push 0x4db21c
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x469f9f
cmp byte [esi + 0x30], 0xb
jne 0x469f65
test bl, bl
je 0x46a480
or dword [edi + 4], 0x8000
jmp case.0x46b14c.7
test bl, bl
je 0x469f93
or dword [edi], 0x100000
cmp word [esp + 0x76], 0
je 0x469f88
lea ecx, [esp + 0x76]
call fcn.004820d0
mov dword [edi + 0x64], eax
jmp case.0x46b14c.7
or eax, 0xffffffff
mov dword [edi + 0x64], eax
jmp case.0x46b14c.7
or dword [edi + 4], 0x100000
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db22c
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x469fc4
test bl, bl
je 0x469fde
or dword [edi], 0x10000
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db23c
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x469fea
test bl, bl
je 0x469fb9
or dword [edi + 4], 0x10000
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db248
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a013
test bl, bl
je 0x46a31e
or dword [edi], 0x20000
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4daa98
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a03d
movzx eax, bl
xor eax, 1
add eax, 3
mov dword [edi + 0x184], eax
jmp case.0x46b14c.7
push 8
lea eax, [esp + 0x6c]
push 0x4db0d0
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46a0bc
cmp word [esp + 0x78], ax
je 0x46a06c
lea ecx, [esp + 0x78]
call fcn.004820d0
test eax, eax
jne 0x46a06c
xor bl, 1
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x46a091
xor eax, eax
test bl, bl
sete al
push eax
push ecx
call dword [esp + 0x50]
mov al, byte [esi + 0x31]
test bl, bl
je 0x46a0b2
or al, 0x10
mov byte [esi + 0x31], al
jmp case.0x46b14c.7
test bl, bl
je 0x46a0a8
or dword [edi], 0x8000000
mov al, byte [esi + 0x31]
or al, 0x10
mov byte [esi + 0x31], al
jmp case.0x46b14c.7
or dword [edi + 4], 0x8000000
mov al, byte [esi + 0x31]
and al, 0xef
mov byte [esi + 0x31], al
jmp case.0x46b14c.7
push 6
lea eax, [esp + 0x6c]
push 0x4db254
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46a140
cmp word [esp + 0x74], ax
je 0x46a0eb
lea ecx, [esp + 0x74]
call fcn.004820d0
test eax, eax
jne 0x46a0eb
xor bl, 1
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x46a115
xor edx, edx
mov eax, 4
test bl, bl
cmovne eax, edx
push eax
push ecx
call dword [esp + 0x54]
mov al, byte [esi + 0x31]
test bl, bl
je 0x46a136
or al, 8
mov byte [esi + 0x31], al
jmp case.0x46b14c.7
test bl, bl
je 0x46a12d
or dword [edi + 4], 0x10000000
mov al, byte [esi + 0x31]
or al, 8
mov byte [esi + 0x31], al
jmp case.0x46b14c.7
or dword [edi], 0x10000000
mov al, byte [esi + 0x31]
and al, 0xf7
mov byte [esi + 0x31], al
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db264
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a1c8
movzx eax, byte [esi + 0x30]
dec eax
cmp eax, 0x12
ja case.0x46b14c.7
movzx eax, byte [eax + 0x46c248]
jmp dword [eax*4 + 0x46c230]
test bl, bl
je 0x46a17f
or dword [edi + 4], 0x1f
jmp case.0x46b14c.7
mov eax, dword [edi]
and eax, 0xffffffec
or eax, 0xc
mov dword [edi], eax
jmp case.0x46b14c.7
or dword [edi + 4], 0x2000
jmp case.0x46b14c.7
test bl, bl
je 0x46a1aa
or dword [edi + 4], 0x100080
jmp case.0x46b14c.7
or dword [edi], 0x80
jmp case.0x46b14c.7
test bl, bl
je 0x46b069
or dword [edi], 0x200
jmp case.0x46b14c.7
push 0xa
lea eax, [esp + 0x6c]
push 0x4db270
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46a2f9
mov eax, dword [esi + 0x38]
mov dword [esi + 0x34], 0xffffffff
test eax, eax
je 0x46a1fe
push eax
call dword [esp + 0x54]
mov dword [esi + 0x38], 0
lea eax, [esp + 0x7c]
push 0x4d50c4
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a23f
test bl, bl
je case.0x46b14c.7
movzx eax, byte [esi + 0x30]
test byte [eax + 0x4db574], 1
jne 0x46a233
mov ecx, 0x4d9eb0
jmp 0x46b928
mov dword [esi + 0x34], 0xff000001
jmp case.0x46b14c.7
test bl, bl
je 0x46a2e6
cmp word [esp + 0x7c], 0
je case.0x46b14c.7
movzx eax, byte [esi + 0x30]
test byte [eax + 0x4db574], 2
jne 0x46a26a
mov ecx, 0x4d9eb0
jmp 0x46b928
lea ecx, [esp + 0x7c]
call fcn.00482cb0
mov edx, eax
mov dword [edi + 0x5c], edx
cmp edx, 0xffffffff
jne 0x46a2be
push 0x10
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x84]
push eax
call fcn.004a4e4d
movzx edx, al
add esp, 0xc
movzx ecx, ax
shl edx, 8
shr ecx, 8
or edx, ecx
shr eax, 0x10
shl edx, 8
movzx eax, al
or edx, eax
mov eax, dword [esp + 0x54]
mov dword [edi + 0x5c], edx
cmp word [eax], 0
jne 0x46b923
cmp edx, 0xff000000
je 0x46a2db
movzx eax, byte [esi + 0x30]
test byte [eax + 0x4db574], 4
je 0x46a2db
push edx
call dword [esp + 0x5c]
mov dword [esi + 0x38], eax
mov eax, dword [edi + 0x5c]
mov dword [esi + 0x34], eax
jmp case.0x46b14c.7
mov dword [esi + 0x34], 0xff000000
mov dword [edi + 0x5c], 0xff000000
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db248
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a32a
test bl, bl
je 0x46a31e
or dword [edi], 0x20000
jmp case.0x46b14c.7
or dword [edi + 4], 0x20000
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db180
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a34b
mov byte [edi + 0x18e], bl
jmp case.0x46b14c.7
push 4
lea eax, [esp + 0x6c]
push 0x4d4e84
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46a3a6
cmp byte [esi + 0x30], 0xa
jne 0x46a38d
lea eax, [esp + 0x70]
push 0x4db288
push eax
call fcn.0049f3a1
add esp, 8
neg eax
sbb eax, eax
and eax, 0xfffffffe
add eax, 2
mov dword [edi + 0x14], eax
jmp case.0x46b14c.7
test bl, bl
je case.0x46b14c.7
lea ecx, [esp + 0x70]
call fcn.004820d0
mov dword [edi + 0x6c], eax
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db294
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a3c8
mov dword [edi + 0x14], 1
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4d9ea0
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a3ea
mov dword [edi + 0x14], 3
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db2a4
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a40c
mov dword [edi + 0x14], 4
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 0xa
jne 0x46a4ca
lea eax, [esp + 0x68]
push 0x4d4ef4
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a440
test bl, bl
je 0x46a7db
or dword [edi + 4], 0x4000
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 0xa
jne 0x46a4ca
push 6
lea eax, [esp + 0x6c]
push 0x4d4ed8
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46a496
lea eax, [esp + 0x74]
push 0x4d4ef4
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a48b
test bl, bl
je 0x469f59
or dword [edi], 0x8000
jmp case.0x46b14c.7
mov byte [edi + 0x18f], bl
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 0xa
jne 0x46a4ca
lea eax, [esp + 0x68]
push 0x4db2b0
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a4ca
mov ecx, dword [edi + 0x10]
mov eax, ecx
and eax, 0xfffffffe
or ecx, 1
test bl, bl
cmove ecx, eax
mov dword [edi + 0x10], ecx
jmp case.0x46b14c.7
push 5
lea eax, [esp + 0x6c]
push 0x4d5a04
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46a4f3
lea ecx, [esp + 0x72]
call fcn.004820d0
mov dword [edi + 0x60], eax
jmp case.0x46b14c.7
push 2
lea eax, [esp + 0x6c]
push 0x4db2bc
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46a547
cmp word [esp + 0x6c], 0x2d
je 0x46a547
lea edx, [esp + 0x5c]
lea ecx, [esp + 0x6c]
call fcn.00482020
mov ecx, dword [esp + 0x5c]
cmp word [ecx], 0
jne 0x46a547
mov ecx, dword [edi + 0x10]
test bl, bl
je 0x46a53b
or eax, ecx
mov dword [edi + 0x10], eax
jmp case.0x46b14c.7
not eax
and eax, ecx
mov dword [edi + 0x10], eax
jmp case.0x46b14c.7
push 9
lea eax, [esp + 0x6c]
push 0x4db2c4
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46a578
test bl, bl
je case.0x46b14c.7
lea ecx, [esp + 0x7a]
call fcn.004820d0
mov dword [edi + 0x18], eax
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 4
jne 0x46a5a4
lea eax, [esp + 0x68]
push 0x4d4618
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a5a4
test bl, bl
je 0x46b00f
or dword [edi], 1
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 5
jne 0x46a5d0
lea eax, [esp + 0x68]
push 0x4db2d8
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a5d0
test bl, bl
je 0x46ab19
or dword [edi], 6
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4d4d4c
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a63e
movzx eax, byte [esi + 0x30]
add eax, 0xfffffff7
cmp eax, 3
ja case.0x46b14c.7
jmp dword [eax*4 + 0x46c25c]
mov ecx, dword [esi + 0x18]
test ecx, ecx
je case.0x46a666.9
push 0
movzx eax, bl
push eax
push 0xcf
push ecx
call dword [esp + 0x20]
jmp case.0x46b14c.7
test bl, bl
je 0x46a1bd
or dword [edi + 4], 0x200
jmp case.0x46b14c.7
test bl, bl
je 0x46b0e0
or dword [edi + 4], 8
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db2e8
push eax
call fcn.0049f3a1
mov cl, byte [esi + 0x30]
add esp, 8
test eax, eax
jne 0x46a699
movzx eax, cl
add eax, 0xfffffff7
cmp eax, 5
ja case.0x46b14c.7
jmp dword [eax*4 + 0x46c26c]
test bl, bl
je 0x46a67c
or dword [edi], 0x800
jmp case.0x46b14c.7
or dword [edi + 4], 0x800
jmp case.0x46b14c.7
test bl, bl
je 0x46afcd
or dword [edi + 4], 4
jmp case.0x46b14c.7
cmp cl, 0xc
jne 0x46a6cf
lea eax, [esp + 0x68]
push 0x4db2f4
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a6cf
test bl, bl
je 0x46a6c3
or dword [edi], 0x1000
jmp case.0x46b14c.7
or dword [edi + 4], 0x1000
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 0xc
jne 0x46a728
lea eax, [esp + 0x68]
push 0x4db30c
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
je 0x46a9f6
cmp byte [esi + 0x30], 0xc
jne 0x46a728
lea eax, [esp + 0x68]
push 0x4db31c
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a728
mov cl, byte [esi + 0x31]
mov al, cl
and cl, 0xfd
or al, 2
movzx ecx, cl
test bl, bl
movzx eax, al
cmove ecx, eax
mov byte [esi + 0x31], cl
jmp case.0x46b14c.7
mov al, byte [esi + 0x30]
cmp al, 0xa
je 0x46a733
cmp al, 0xb
jne 0x46a766
lea eax, [esp + 0x68]
push 0x4db330
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a766
mov cl, byte [esi + 0x31]
mov al, cl
and cl, 0x7f
or al, 0x80
movzx ecx, cl
test bl, bl
movzx eax, al
cmove ecx, eax
mov byte [esi + 0x31], cl
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 0xc
jne 0x46a795
lea eax, [esp + 0x68]
push 0x4d0c1c
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a795
test bl, bl
je 0x46a18e
or dword [edi], 0x2000
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db340
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a7e6
mov al, byte [esi + 0x30]
cmp al, 0xc
jne 0x46a7c7
test bl, bl
je 0x46a7be
or dword [edi], 0x10
jmp case.0x46b14c.7
or dword [edi + 4], 0x10
jmp case.0x46b14c.7
cmp al, 8
je case.0x46a5f6.9
cmp al, 7
jne case.0x46b14c.7
test bl, bl
je 0x46a434
or dword [edi], 0x4000
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db354
push eax
call fcn.0049f3a1
mov cl, byte [esi + 0x30]
add esp, 8
test eax, eax
jne 0x46a835
cmp cl, 0xc
jne 0x46a814
test bl, bl
je 0x46b0eb
or dword [edi], 8
jmp case.0x46b14c.7
cmp cl, 8
je case.0x46a16b.3
cmp cl, 7
jne case.0x46b14c.7
test bl, bl
je 0x46a18e
or dword [edi], 0x2000
jmp case.0x46b14c.7
cmp cl, 0xc
jne 0x46a8cb
push 8
lea eax, [esp + 0x6c]
push 0x4d4f74
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46a8cb
mov ax, word [esp + 0x78]
mov word [edi + 0x188], ax
test bl, bl
je 0x46a8a8
or dword [edi], 0x20
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x46a8c1
push 0
test ax, ax
jne 0x46a890
push 0x25cf
push 0xcc
push ecx
call dword [esp + 0x20]
mov byte [esp + 0x1c], 1
jmp case.0x46b14c.7
movzx eax, ax
push eax
push 0xcc
push ecx
call dword [esp + 0x20]
mov byte [esp + 0x1c], 1
jmp case.0x46b14c.7
or dword [edi + 4], 0x20
mov eax, dword [esi + 0x18]
test eax, eax
je 0x46a8c1
push 0
push 0
push 0xcc
push eax
call dword [esp + 0x20]
mov byte [esp + 0x1c], 1
jmp case.0x46b14c.7
push 5
lea eax, [esp + 0x6c]
push 0x4db368
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46a917
test bl, bl
je 0x46a90a
cmp word [esp + 0x72], ax
je 0x46a8ff
lea ecx, [esp + 0x72]
call fcn.004820d0
mov dword [edi + 0x60], eax
jmp case.0x46b14c.7
or eax, 0xffffffff
mov dword [edi + 0x60], eax
jmp case.0x46b14c.7
mov eax, SysReAllocString
mov dword [edi + 0x60], eax
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 8
jne 0x46a943
lea eax, [esp + 0x68]
push 0x4db374
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a943
test bl, bl
je 0x46b00f
or dword [edi], 1
jmp case.0x46b14c.7
push 4
lea eax, [esp + 0x6c]
push 0x4d4ecc
push eax
call fcn.0049f522
mov cl, byte [esi + 0x30]
add esp, 0xc
test eax, eax
jne 0x46a9a4
movzx eax, cl
add eax, 0xfffffff9
cmp eax, 3
ja case.0x46b14c.7
jmp dword [eax*4 + 0x46c284]
test bl, bl
je 0x46a99b
lea eax, [esp + 0x70]
push 0x4d4eb0
push eax
call fcn.0049f3a1
add esp, 8
neg eax
sbb eax, eax
and eax, 0xfffffff0
add eax, 0x20
or dword [edi], eax
jmp case.0x46b14c.7
or dword [edi + 4], 0x30
jmp case.0x46b14c.7
cmp cl, 0x10
jne 0x46a9d6
lea eax, [esp + 0x68]
push 0x4db384
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46a9d6
test bl, bl
je 0x46ab8e
mov eax, dword [edi]
and eax, 0xffffffef
or eax, 0x40
mov dword [edi], eax
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 0x11
jne 0x46aaa3
lea eax, [esp + 0x68]
push 0x4db390
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46aa13
mov cl, byte [esi + 0x31]
mov al, cl
or cl, 0x80
and al, 0x7f
movzx ecx, cl
test bl, bl
movzx eax, al
cmove ecx, eax
mov byte [esi + 0x31], cl
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 0x11
jne 0x46aaa3
lea eax, [esp + 0x68]
push 0x4db3a0
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46aa43
test bl, bl
je 0x46a7be
or dword [edi], 0x10
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 0x11
jne 0x46aaa3
push 0xc
lea eax, [esp + 0x6c]
push 0x4db3b0
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46aaa3
mov byte [edi + 0x18b], 1
test bl, bl
je 0x46aa94
or dword [edi], 1
lea ecx, [esp + 0x80]
cmp word [esp + 0x80], ax
setne al
mov byte [edi + 0x18c], al
call fcn.004820d0
mov dword [edi + 0x3c], eax
jmp case.0x46b14c.7
or dword [edi + 4], 1
or eax, 0xffffffff
mov dword [edi + 0x3c], eax
jmp case.0x46b14c.7
push 4
lea eax, [esp + 0x6c]
push 0x4d2ab8
push eax
call fcn.0049f522
mov cl, byte [esi + 0x30]
add esp, 0xc
test eax, eax
jne 0x46ab22
cmp cl, 0x11
jne 0x46aadc
test bl, bl
je case.0x46b14c.7
lea ecx, [esp + 0x70]
call fcn.004820d0
mov dword [edi + 0x40], eax
jmp case.0x46b14c.7
cmp cl, 0xb
jne case.0x46b14c.7
movzx eax, word [esp + 0x70]
mov edx, eax
lea esi, [eax - 0x61]
and eax, 0xffdf
movzx ecx, ax
cmp si, 0x19
mov eax, edx
cmova ecx, eax
cmp cx, 0x53
jne 0x46b24d
mov esi, dword [ebp + 0x10]
test bl, bl
je 0x46ab19
or dword [edi], 6
jmp case.0x46b14c.7
or dword [edi + 4], 6
jmp case.0x46b14c.7
cmp cl, 0x11
jne 0x46ab58
push 4
lea eax, [esp + 0x6c]
push 0x4db3cc
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46ab58
test bl, bl
je case.0x46b14c.7
lea ecx, [esp + 0x70]
call fcn.004820d0
mov dword [edi + 0x44], eax
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 0x11
jne 0x46ab97
push 5
lea eax, [esp + 0x6c]
push 0x4db3d8
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46ab97
test bl, bl
je 0x46ab8e
or dword [edi], 0x40
lea ecx, [esp + 0x72]
call fcn.004820d0
mov dword [edi + 0x48], eax
jmp case.0x46b14c.7
or dword [edi + 4], 0x40
jmp case.0x46b14c.7
push 7
lea eax, [esp + 0x6c]
push 0x4cf2d0
push eax
call fcn.0049f522
mov cl, byte [esi + 0x30]
add esp, 0xc
test eax, eax
jne 0x46ac50
cmp cl, 0x11
jne case.0x46b14c.7
test bl, bl
je 0x46b17a
movzx eax, word [esp + 0x76]
mov edx, eax
add eax, 0xffffff9f
mov ecx, edx
and ecx, 0xffffffdf
cmp ax, 0x19
cmova ecx, edx
add ecx, 0xffffffbe
cmp ecx, 0x12
ja case.0x46abec.67
movzx eax, byte [ecx + 0x46c2a8]
jmp dword [eax*4 + 0x46c294]
xor eax, eax
inc eax
mov dword [edi + 0x4c], eax
or dword [edi], 0x100
jmp case.0x46b14c.7
mov eax, 1
inc eax
mov dword [edi + 0x4c], eax
or dword [edi], 0x100
jmp case.0x46b14c.7
mov eax, 2
inc eax
mov dword [edi + 0x4c], eax
or dword [edi], 0x100
jmp case.0x46b14c.7
mov eax, 3
inc eax
mov dword [edi + 0x4c], eax
or dword [edi], 0x100
jmp case.0x46b14c.7
xor eax, eax
mov dword [edi + 0x4c], eax
or dword [edi], 0x100
jmp case.0x46b14c.7
cmp cl, 0x11
jne 0x46acbc
push 5
lea eax, [esp + 0x6c]
push 0x4db3e4
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46acbc
test bl, bl
je case.0x46b14c.7
movzx esi, word [esp + 0x72]
test si, si
je 0x46b24d
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x74]
push eax
call fcn.0046e1a0
mov edx, dword [esp + 0x18]
cmp eax, dword [edx + 0x5c]
jae 0x46b24d
mov ecx, dword [edx + 0x2c]
cmp esi, 0x31
mov esi, dword [ebp + 0x10]
mov eax, dword [ecx + eax*4]
jne 0x46acb4
mov dword [edi + 0x50], eax
jmp case.0x46b14c.7
mov dword [edi + 0x54], eax
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db3f0
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46ad01
mov al, byte [esi + 0x30]
cmp al, 0x11
jne 0x46ace9
test bl, bl
je case.0x46b03b.11
or dword [edi], 2
jmp case.0x46b14c.7
cmp al, 0x12
jne case.0x46b14c.7
test bl, bl
je 0x46af05
or dword [edi], 4
jmp case.0x46b14c.7
push 5
lea eax, [esp + 0x6c]
push 0x4db404
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46adc3
test bl, bl
je case.0x46b14c.7
cmp word [esp + 0x72], ax
je case.0x46b14c.7
mov al, byte [esi + 0x30]
cmp al, 0xd
je 0x46ad75
cmp al, 0xe
je 0x46ad75
lea ecx, [esp + 0x72]
mov byte [edi + 0x18a], 1
call fcn.004820d0
mov dword [edi + 0x34], eax
lea eax, [esp + 0x74]
push 0x2d
push eax
call fcn.0049cf2f
add esp, 8
test eax, eax
je case.0x46b14c.7
lea ecx, [eax + 2]
call fcn.004820d0
mov dword [edi + 0x38], eax
jmp case.0x46b14c.7
lea esi, [edi + 0x15c]
mov edx, esi
lea ecx, [esp + 0x72]
call fcn.00481400
mov dword [edi + 0x180], eax
test eax, eax
je case.0x46b436.68
mov ecx, dword [ebp + 0x10]
mov ecx, dword [ecx + 0x18]
test ecx, ecx
je 0x46b24d
push esi
mov esi, dword [ebp + 0x10]
mov edx, 0x1004
push eax
mov eax, 0x1012
cmp byte [esi + 0x30], 0xd
cmove eax, edx
push eax
push ecx
call dword [esp + 0x20]
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 0x12
jne 0x46adef
lea eax, [esp + 0x68]
push 0x4db410
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46adef
test bl, bl
je 0x46b00f
or dword [edi], 1
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4db420
push eax
call fcn.0049f3a1
mov cl, byte [esi + 0x30]
add esp, 8
test eax, eax
jne 0x46ae39
cmp cl, 0x13
jne 0x46ae20
test bl, bl
je 0x46b17a
or dword [edi], 0x100
jmp case.0x46b14c.7
cmp cl, 0xb
jne case.0x46b14c.7
test bl, bl
je 0x46b00f
or dword [edi], 1
jmp case.0x46b14c.7
cmp cl, 0x13
jne 0x46ae76
lea eax, [esp + 0x68]
push 0x4db430
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46ae76
mov eax, dword [edi + 4]
test bl, bl
je 0x46ae6b
or dword [edi], 2
or eax, 0x80
mov dword [edi + 4], eax
jmp case.0x46b14c.7
or eax, 2
mov dword [edi + 4], eax
jmp case.0x46b14c.7
cmp byte [esi + 0x30], 0x18
jne 0x46aec8
push 5
lea eax, [esp + 0x6c]
push 0x4d6f64
push eax
call fcn.0049f522
add esp, 0xc
test eax, eax
jne 0x46aec8
lea eax, [esp + 0x2a0]
push eax
lea eax, [esp + 0x76]
push eax
push dword [0x4e8c70]
call dword [esp + 0x6c]
movzx eax, ax
mov word [edi + 0x192], ax
test ax, ax
jne case.0x46b14c.7
mov ecx, 0x4db440
jmp 0x46b928
lea eax, [esp + 0x68]
push 0x4d4e98
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46af8f
movzx eax, byte [esi + 0x30]
dec eax
cmp eax, 0x10
ja case.0x46b14c.7
test bl, bl
je 0x46af31
movzx eax, byte [eax + 0x46c2d0]
jmp dword [eax*4 + 0x46c2bc]
or dword [edi + 4], 4
jmp case.0x46b14c.7
movzx eax, byte [eax + 0x46c2f8]
jmp dword [eax*4 + 0x46c2e4]
or dword [edi + 4], 0x1f
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4d2cbc
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46b0a2
movzx eax, byte [esi + 0x30]
dec eax
test bl, bl
je 0x46b02b
cmp eax, 0x16
ja case.0x46b14c.7
movzx eax, byte [eax + 0x46c32c]
jmp dword [eax*4 + 0x46c30c]
or dword [edi + 4], 8
or dword [edi], 4
jmp case.0x46b14c.7
or dword [edi], 2
or dword [edi + 4], 0x1d
jmp case.0x46b14c.7
mov eax, dword [edi]
or dword [edi + 4], 0x100
or eax, 0x200
mov dword [edi], eax
mov cl, byte [esi + 0x30]
cmp cl, 5
je 0x46b002
cmp cl, 6
jne case.0x46b14c.7
or eax, 0x20
mov dword [edi], eax
jmp case.0x46b14c.7
or dword [edi], 2
or dword [edi + 4], 1
jmp case.0x46b14c.7
or dword [edi], 0x282
jmp case.0x46b14c.7
or dword [edi], 0x20
jmp case.0x46b14c.7
cmp eax, 0x12
ja case.0x46b14c.7
movzx eax, byte [eax + 0x46c360]
jmp dword [eax*4 + 0x46c344]
or dword [edi + 4], 0x20
jmp case.0x46b14c.7
mov eax, dword [esi + 0x18]
test eax, eax
je 0x46b075
push 0xfffffffffffffff0
push eax
call dword [esp + 0x34]
and eax, 0x300
cmp eax, 0x300
je case.0x46b14c.7
or dword [edi + 4], 0x200
jmp case.0x46b14c.7
mov ecx, dword [edi]
mov eax, ecx
and eax, 0x300
cmp eax, 0x300
je case.0x46b14c.7
and ecx, 0xfffffdff
mov dword [edi], ecx
jmp case.0x46b14c.7
or dword [edi + 4], 0x82
jmp case.0x46b14c.7
lea eax, [esp + 0x68]
push 0x4d2cb0
push eax
call fcn.0049f3a1
add esp, 8
test eax, eax
jne 0x46b1b3
movzx eax, byte [esi + 0x30]
test bl, bl
je 0x46b139
dec eax
cmp eax, 0x12
ja case.0x46b14c.7
movzx eax, byte [eax + 0x46c394]
jmp dword [eax*4 + 0x46c374]
or dword [edi + 4], 4
or dword [edi], 8
jmp case.0x46b14c.7
or dword [edi], 4
or dword [edi + 4], 8
jmp case.0x46b14c.7
mov eax, dword [edi + 4]
or dword [edi], 0x100
or eax, 0x200
mov dword [edi + 4], eax
mov cl, byte [esi + 0x30]
cmp cl, 5
je 0x46b116
cmp cl, 6
jne case.0x46b14c.7
or eax, 0x20
mov dword [edi + 4], eax
jmp case.0x46b14c.7
or dword [edi + 4], 3
jmp case.0x46b14c.7
or dword [edi], 0x280
or dword [edi + 4], 2
jmp case.0x46b14c.7
add eax, 0xfffffffd
cmp eax, 0x10
ja case.0x46b14c.7
movzx eax, byte [eax + 0x46c3b8]
jmp dword [eax*4 + 0x46c3a8]
or dword [edi + 4], 0xc
jmp case.0x46b14c.7
mov eax, dword [esi + 0x18]
test eax, eax
je 0x46b186
push 0xfffffffffffffff0
push eax
call dword [esp + 0x34]
and eax, 0x300
cmp eax, 0x300
je case.0x46b14c.7
or dword [edi + 4], 0x100
jmp case.0x46b14c.7
mov ecx, dword [edi]
mov eax, ecx
and eax, 0x300
cmp eax, 0x300
je case.0x46b14c.7
and ecx, 0xfffffeff
mov dword [edi], ecx
jmp case.0x46b14c.7
or dword [edi + 4], 0x80
jmp case.0x46b14c.7
mov ax, word [esp + 0x68]
cmp ax, 0x2d
je 0x46b1e7
lea edx, [esp + 0x64]
lea ecx, [esp + 0x68]
call fcn.00482020
mov ecx, dword [esp + 0x64]
cmp word [ecx], 0
jne 0x46b1e2
test bl, bl
je 0x46b1dd
or dword [edi], eax
jmp case.0x46b14c.7
or dword [edi + 4], eax
jmp case.0x46b14c.7
mov ax, word [esp + 0x68]
movzx eax, ax
mov esi, eax
add eax, 0xffffff9f
cmp ax, 0x19
ja 0x46b1fd
and esi, 0xffdf
jmp 0x46b200
movzx esi, si
cmp word [esp + 0x6a], 0
lea ecx, [esp + 0x6a]
mov dword [esp + 0x24], esi
movzx eax, si
mov dword [esp + 0x20], ecx
jne 0x46b26a
cmp eax, 0x43
je 0x46b242
cmp si, 0x56
mov esi, dword [ebp + 0x10]
jne 0x46b923
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x46b239
push eax
call fcn.0049f4a2
add esp, 4
mov dword [esi + 0x1c], 0
jmp case.0x46b14c.7
test bl, bl
jne 0x46b24d
mov dword [edi + 0x58], 0xff000000
mov esi, dword [ebp + 0x10]
mov ecx, dword [esp + 0x40]
movzx eax, word [ecx]
cmp eax, 0x20
je 0x46b265
cmp eax, 9
jne 0x46b949
add ecx, 2
jmp 0x46b254
push esi
push 0x4db478
mov dword [esp + 0x3c], 0
call fcn.0049cf2f
add esp, 8
test eax, eax
je 0x46b410
mov cx, word [esp + 0x6a]
movzx eax, cx
mov edx, eax
add eax, 0xffffff9f
cmp ax, 0x19
ja 0x46b2a3
and edx, 0xffdf
jmp 0x46b2a6
movzx edx, dx
movzx eax, si
add eax, 0xffffffb8
mov dword [esp + 0x28], edx
cmp eax, 0x11
ja case.0x46b2c0.73
movzx eax, byte [eax + 0x46c3d8]
jmp dword [eax*4 + 0x46c3cc]
cmp dx, 0x50
lea esi, [esp + 0x6a]
lea eax, [esp + 0x6c]
cmove esi, eax
mov dword [esp + 0x20], esi
jmp 0x46b344
cmp cx, 0x2b
jne 0x46b31a
movzx eax, word [esp + 0x6c]
mov ecx, eax
lea edx, [eax - 0x61]
and eax, 0xffdf
movzx esi, ax
cmp dx, 0x19
mov eax, ecx
cmova esi, eax
mov eax, 0x4d
cmp ax, si
jne 0x46b316
lea esi, [esp + 0x6e]
mov byte [esp + 0xf], 1
mov dword [esp + 0x20], esi
jmp 0x46b344
mov edx, dword [esp + 0x28]
push edx
push 0x4db488
mov byte [esp + 0x17], 0
call fcn.0049cf2f
add esp, 8
lea ecx, [esp + 0x6c]
test eax, eax
cmove ecx, dword [esp + 0x20]
mov esi, ecx
mov dword [esp + 0x20], esi
jmp 0x46b344
mov esi, dword [esp + 0x20]
push ecx
push 1
push 0
mov edx, 1
mov ecx, esi
call fcn.00481730
add esp, 0xc
sub eax, 1
je 0x46b3a5
sub eax, 1
je 0x46b37e
cmp word [esi], 0
jne 0x46b371
mov ecx, dword [esp + 0x28]
test cx, cx
jne 0x46b3c3
mov edx, dword [esp + 0x18]
xor esi, esi
mov ecx, esi
jmp 0x46b420
push esi
call fcn.004a9412
mov ecx, dword [esp + 0x2c]
add esp, 4
fstp dword [esp + 0x30]
movss xmm0, dword [esp + 0x30]
cvttss2si eax, xmm0
movss dword [esp + 0x30], xmm0
mov dword [esp + 0x34], eax
jmp 0x46b3c7
mov ecx, esi
call fcn.004820d0
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x34], eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esp + 0x30], xmm0
jmp 0x46b3c7
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0x24]
cmp si, 0x58
je 0x46b3ee
cmp si, 0x59
je 0x46b3ee
cmp si, 0x57
je 0x46b3e3
cmp si, 0x48
jne 0x46b418
cmp eax, 0xffffffff
jne 0x46b3ee
cmp cx, 0x50
jne 0x46b418
mov edx, dword [esp + 0x18]
cmp byte [edx + 0xc6], 0
je 0x46b41c
push 0x60
push dword [0x4e9eac]
push eax
call dword [esp + 0x50]
mov edx, dword [esp + 0x18]
mov ecx, eax
jmp 0x46b420
mov edx, dword [esp + 0x18]
xor ecx, ecx
jmp 0x46b420
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x34]
movzx eax, si
add eax, 0xffffffbd
cmp eax, 0x16
ja case.0x46b436.68
movzx eax, byte [eax + 0x46c414]
jmp dword [eax*4 + 0x46c3ec]
mov eax, dword [edi + 0x138]
mov esi, dword [ebp + 0x10]
cmp eax, 0x32
jae case.0x46b14c.7
mov dword [edi + eax*4 + 0x70], ecx
inc dword [edi + 0x138]
jmp case.0x46b14c.7
mov esi, dword [esp + 0x20]
mov ecx, edx
push esi
mov esi, dword [ebp + 0x10]
push esi
call fcn.00463660
cmp eax, 0xa0000000
je 0x46b93e
cmp eax, 0xa00e0001
jne case.0x46b14c.7
push dword [0x4e9d8c]
mov ecx, 0x4e9ec0
push 0
push 0
push 0
push 0x4d27e0
call fcn.0040c990
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov esi, dword [esp + 0x20]
cmp word [esi], 0
je 0x46b246
mov ecx, esi
call fcn.00482cb0
mov dword [edi + 0x58], eax
cmp eax, 0xffffffff
jne 0x46b24d
push 0x10
lea eax, [esp + 0x40]
push eax
push esi
call fcn.004a4e4d
mov esi, dword [ebp + 0x10]
add esp, 0xc
movzx edx, al
movzx ecx, ax
shl edx, 8
shr ecx, 8
or edx, ecx
shr eax, 0x10
shl edx, 8
movzx eax, al
or edx, eax
mov eax, dword [esp + 0x3c]
mov dword [edi + 0x58], edx
cmp word [eax], 0
je case.0x46b14c.7
jmp 0x46b923
cmp word [esp + 0x28], 0x50
jne 0x46b523
mov eax, dword [edx + 0x8c]
add eax, ecx
mov dword [edi + 0x24], eax
jmp 0x46b24d
mov eax, ecx
mov dword [edi + 0x24], eax
jmp 0x46b24d
cmp word [esp + 0x28], 0x50
jne 0x46b545
mov eax, dword [edx + 0x90]
add eax, ecx
mov dword [edi + 0x28], eax
jmp 0x46b24d
mov eax, ecx
mov dword [edi + 0x28], eax
jmp 0x46b24d
mov ebx, dword [esp + 0x28]
cmp bx, 0x2b
jne 0x46b668
cmp byte [esp + 0xf], 0
je 0x46b569
mov eax, dword [edx + 0x7c]
jmp 0x46b56b
xor eax, eax
mov esi, dword [ebp + 0x10]
add eax, ecx
mov dword [esp + 0x24], eax
mov ah, byte [esi + 0x32]
mov byte [esp + 0x17], ah
cmp ah, 0xff
je 0x46b5b3
mov ecx, dword [esp + 0x18]
xor al, al
xor edx, edx
mov ebx, dword [ecx + 0x5c]
test ebx, ebx
je 0x46b5b3
mov ecx, dword [ecx + 0x2c]
mov dword [esp + 0x34], ecx
mov esi, dword [ecx]
mov dword [esp + 0x20], esi
cmp byte [esi + 0x30], 0x13
jne 0x46b5a8
cmp al, ah
je 0x46b5e5
inc al
inc edx
add ecx, 4
cmp edx, ebx
jb 0x46b596
mov esi, dword [ebp + 0x10]
mov ebx, dword [esp + 0x18]
mov eax, dword [ebx + 0x8c]
add eax, dword [ebx + 0x84]
add eax, dword [esp + 0x24]
cmp dword [edi + 0x20], 0x80000000
mov dword [edi + 0x1c], eax
jne case.0x46b14c.7
mov eax, dword [ebx + 0x88]
mov dword [edi + 0x20], eax
jmp case.0x46b14c.7
test esi, esi
je 0x46b5b0
mov ecx, dword [ebp + 0x10]
xor edx, edx
mov bh, byte [esp + 0x17]
xor eax, eax
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x18]
mov bl, byte [ecx + 0x33]
nop
mov ecx, dword [edi + eax*4]
cmp byte [ecx + 0x33], bl
jne 0x46b60e
cmp byte [ecx + 0x32], bh
jne 0x46b60e
inc edx
inc eax
cmp eax, dword [esi + 0x5c]
jb 0x46b600
mov edi, dword [ebp + 0xc]
mov esi, dword [esp + 0x20]
test edx, edx
jne 0x46b5b0
mov ebx, dword [esp + 0x18]
lea eax, [esp + 0x270]
push eax
push dword [esi + 0x18]
mov ecx, ebx
call fcn.00470d30
mov eax, dword [esp + 0x270]
add eax, dword [esp + 0x24]
cmp dword [edi + 0x20], 0x80000000
mov ecx, dword [esp + 0x274]
mov esi, dword [ebp + 0x10]
mov dword [edi + 0x1c], eax
jne case.0x46b14c.7
add ecx, dword [ebx + 0x80]
mov dword [edi + 0x20], ecx
jmp case.0x46b14c.7
cmp bx, 0x4d
jne 0x46b69a
mov eax, dword [edx + 0x7c]
add eax, ecx
mov dword [edi + 0x1c], eax
cmp dword [edi + 0x20], 0x80000000
mov esi, dword [ebp + 0x10]
jne case.0x46b14c.7
mov eax, dword [edx + 0x98]
add eax, dword [edx + 0x80]
mov dword [edi + 0x20], eax
jmp case.0x46b14c.7
cmp bx, 0x50
jne 0x46b6dc
mov eax, dword [edx + 0x84]
add eax, ecx
cmp dword [edi + 0x20], 0x80000000
mov dword [edi + 0x1c], eax
jne 0x46b24d
mov ecx, dword [edx + 0x88]
cmp eax, dword [edx + 0x84]
jne 0x46b6d4
mov eax, dword [edx + 0x90]
add eax, dword [edx + 0x80]
add ecx, eax
mov dword [edi + 0x20], ecx
jmp 0x46b24d
cmp bx, 0x53
jne 0x46b711
mov eax, dword [edx + 0x9c]
mov esi, dword [ebp + 0x10]
add eax, ecx
cmp dword [edi + 0x20], 0x80000000
mov dword [edi + 0x1c], eax
jne case.0x46b14c.7
mov eax, dword [edx + 0xa8]
add eax, dword [edx + 0x80]
mov dword [edi + 0x20], eax
jmp case.0x46b14c.7
mov dword [edi + 0x1c], ecx
jmp 0x46b676
mov ebx, dword [esp + 0x28]
cmp bx, 0x2b
jne 0x46b84b
cmp byte [esp + 0xf], 0
je 0x46b736
mov eax, dword [edx + 0x80]
jmp 0x46b738
xor eax, eax
mov esi, dword [ebp + 0x10]
add eax, ecx
mov dword [esp + 0x24], eax
mov ah, byte [esi + 0x32]
mov byte [esp + 0x17], ah
cmp ah, 0xff
je 0x46b81d
mov ecx, dword [esp + 0x18]
xor al, al
xor edx, edx
mov ebx, dword [ecx + 0x5c]
test ebx, ebx
je 0x46b81b
mov ecx, dword [ecx + 0x2c]
mov dword [esp + 0x34], ecx
nop dword [eax + eax]
mov esi, dword [ecx]
mov dword [esp + 0x20], esi
cmp byte [esi + 0x30], 0x13
jne 0x46b782
cmp al, ah
je 0x46b796
inc al
inc edx
add ecx, 4
cmp edx, ebx
jb 0x46b770
mov esi, dword [ebp + 0x10]
mov edx, dword [esp + 0x18]
jmp 0x46b81d
test esi, esi
je 0x46b78a
mov ecx, dword [ebp + 0x10]
xor edx, edx
mov bh, byte [esp + 0x17]
xor eax, eax
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x18]
mov bl, byte [ecx + 0x33]
mov ecx, dword [edi + eax*4]
cmp byte [ecx + 0x33], bl
jne 0x46b7be
cmp byte [ecx + 0x32], bh
jne 0x46b7be
inc edx
inc eax
cmp eax, dword [esi + 0x5c]
jb 0x46b7b0
mov edi, dword [ebp + 0xc]
mov esi, dword [esp + 0x20]
test edx, edx
jne 0x46b78a
mov ebx, dword [esp + 0x18]
lea eax, [esp + 0x280]
push eax
push dword [esi + 0x18]
mov ecx, ebx
call fcn.00470d30
mov eax, dword [esp + 0x284]
add eax, dword [esp + 0x24]
cmp dword [edi + 0x1c], 0x80000000
mov ecx, dword [esp + 0x280]
mov esi, dword [ebp + 0x10]
mov dword [esp + 0x34], ecx
mov dword [edi + 0x20], eax
jne case.0x46b14c.7
mov eax, dword [ebx + 0x7c]
add eax, ecx
mov dword [edi + 0x1c], eax
jmp case.0x46b14c.7
mov edx, ecx
mov eax, dword [edx + 0x90]
add eax, dword [edx + 0x88]
add eax, dword [esp + 0x24]
cmp dword [edi + 0x1c], 0x80000000
mov dword [edi + 0x20], eax
jne case.0x46b14c.7
mov eax, dword [edx + 0x84]
mov dword [edi + 0x1c], eax
jmp case.0x46b14c.7
cmp bx, 0x4d
jne 0x46b87d
mov eax, dword [edx + 0x80]
add eax, ecx
mov dword [edi + 0x20], eax
cmp dword [edi + 0x1c], 0x80000000
mov esi, dword [ebp + 0x10]
jne case.0x46b14c.7
mov eax, dword [edx + 0x94]
add eax, dword [edx + 0x7c]
mov dword [edi + 0x1c], eax
jmp case.0x46b14c.7
cmp bx, 0x50
jne 0x46b8bf
mov eax, dword [edx + 0x88]
add eax, ecx
cmp dword [edi + 0x1c], 0x80000000
mov dword [edi + 0x20], eax
jne 0x46b24d
mov ecx, dword [edx + 0x84]
cmp eax, dword [edx + 0x88]
jne 0x46b8b7
mov eax, dword [edx + 0x8c]
add eax, dword [edx + 0x80]
add ecx, eax
mov dword [edi + 0x1c], ecx
jmp 0x46b24d
cmp bx, 0x53
jne 0x46b8f1
mov eax, dword [edx + 0xa0]
mov esi, dword [ebp + 0x10]
add eax, ecx
cmp dword [edi + 0x1c], 0x80000000
mov dword [edi + 0x20], eax
jne case.0x46b14c.7
mov eax, dword [edx + 0xa4]
add eax, dword [edx + 0x7c]
mov dword [edi + 0x1c], eax
jmp case.0x46b14c.7
mov dword [edi + 0x20], ecx
jmp 0x46b85c
movss xmm0, dword [esp + 0x30]
movss dword [edi + 0x2c], xmm0
jmp 0x46b24d
mov esi, dword [ebp + 0x10]
test bl, bl
je 0x46b918
or dword [edi + 8], ecx
jmp case.0x46b14c.7
or dword [edi + 0xc], ecx
jmp case.0x46b14c.7
mov esi, dword [ebp + 0x10]
mov ecx, 0x4d45b0
push 9
lea edx, [esp + 0x6c]
call fcn.0040dd10
add esp, 4
test eax, eax
jne case.0x46b14c.7
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov edx, eax
test ax, ax
jne 0x469cd5
mov edx, dword [esp + 0x2c]
mov eax, dword [esi + 0x18]
test eax, eax
je 0x46c220
push 0xfffffffffffffff0
push eax
call edx
mov edx, dword [edi + 4]
mov esi, eax
mov ebx, esi
mov dword [esp + 0x24], esi
or ebx, dword [edi]
mov ecx, edx
not ecx
and ebx, ecx
mov ecx, dword [ebp + 0x10]
movzx eax, byte [ecx + 0x30]
add eax, 0xfffffffe
cmp eax, 8
ja case.0x46b98e.9
jmp dword [eax*4 + 0x46c42c]
mov eax, ebx
xor eax, esi
and eax, 0xf
xor ebx, eax
jmp case.0x46b98e.9
and ebx, 0xfffffff7
or ebx, 7
jmp case.0x46b98e.9
test bl, 1
je 0x46b9bb
and ebx, 0xfffffff1
or ebx, 1
jmp 0x46b9be
and ebx, 0xfffffff0
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x64]
cmp dword [ebp + 0x14], ecx
jne 0x46b9f6
test dl, 1
je case.0x46b98e.9
push 0
push 1
push 0x401
push dword [eax + 0x1c]
mov dword [eax + 0x64], 0xffffffff
call dword [esp + 0x20]
or esi, 1
mov dword [esp + 0x24], esi
jmp case.0x46b98e.9
test byte [edi], 1
je case.0x46b98e.9
cmp ecx, dword [eax + 0x5c]
jae 0x46ba38
mov eax, dword [eax + 0x2c]
push 1
push 0xfffffffffffffff0
mov eax, dword [eax + ecx*4]
push dword [eax + 0x18]
call dword [esp + 0x38]
and eax, 0xfffe
push eax
mov eax, dword [esp + 0x20]
push 0xf4
mov ecx, dword [eax + 0x64]
mov eax, dword [eax + 0x2c]
mov eax, dword [eax + ecx*4]
push dword [eax + 0x18]
call dword [esp + 0x20]
mov eax, dword [esp + 0x18]
mov ecx, dword [ebp + 0x14]
mov dword [eax + 0x64], ecx
push 0
lea eax, [ecx + 3]
push eax
mov eax, dword [esp + 0x20]
push 0x401
push dword [eax + 0x1c]
call dword [esp + 0x20]
jmp case.0x46b98e.9
mov eax, ebx
and eax, 6
cmp al, 6
jne 0x46ba67
and ebx, 0xfffffff6
or ebx, 6
jmp case.0x46b98e.9
and ebx, 0xfffffff3
or ebx, 3
jmp case.0x46b98e.9
and ebx, 0xfffffff9
or ebx, 9
jmp case.0x46b98e.9
test bl, 1
je 0x46ba84
and ebx, 0xfffffff1
or ebx, 1
jmp case.0x46b98e.9
and ebx, 0xfffffff2
or ebx, 2
jmp case.0x46b98e.9
mov eax, dword [edi + 0x14]
cmp eax, 0xffffffff
je case.0x46b98e.9
push 0
push eax
push 0x108e
push dword [ecx + 0x18]
call dword [esp + 0x20]
mov eax, dword [edi + 0x14]
cmp eax, 4
je case.0x46b98e.9
and ebx, 0xfffffffc
or ebx, eax
mov eax, dword [edi + 0x60]
mov edx, dword [ebp + 0x10]
test eax, eax
je 0x46bb1a
mov cl, byte [edx + 0x30]
cmp cl, 0xc
jne 0x46baf8
mov ecx, dword [edx + 0x18]
push 0
test eax, eax
jns 0x46baf0
push 0
push 0xc5
push ecx
call dword [esp + 0x20]
cmp dword [edi + 0x60], 0x80000000
mov edx, dword [ebp + 0x10]
je 0x46bb1a
test bl, 4
jne 0x46bb1a
and ebx, 0xffefff7f
jmp 0x46bb1a
push eax
push 0xc5
jmp 0x46bb12
cmp cl, 0xf
jne 0x46bb1a
mov ecx, dword [edx + 0x18]
test eax, eax
jns 0x46bb0a
push 0
push 0
jmp 0x46bb0d
push 6
push eax
push 0x403
push ecx
call dword [esp + 0x20]
mov edx, dword [ebp + 0x10]
mov byte [esp + 0xf], 0
cmp esi, ebx
je 0x46bc13
mov al, byte [edx + 0x30]
mov byte [esp + 0xf], 1
mov byte [esp + 0x18], 0
cmp al, 4
je 0x46bbb9
cmp al, 9
je 0x46bb5e
cmp al, 0x12
jne 0x46bbcb
push 0
push 0
push 0x408
push dword [edx + 0x18]
call dword [esp + 0x20]
mov dword [esp + 0x44], eax
jmp 0x46bbcb
mov eax, esi
and eax, 0x100000
test ebx, 0x100000
je 0x46bbaa
test eax, eax
jne 0x46bbcb
mov eax, dword [edi + 0x64]
test eax, eax
jns 0x46bba0
lea eax, [esp + 0x290]
push eax
push dword [edx + 0x18]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [esp + 0x298]
sub eax, dword [esp + 0x290]
mov edx, dword [ebp + 0x10]
lea eax, [eax + eax*2]
mov dword [edi + 0x64], eax
push 0
push eax
push 0x194
jmp 0x46bbc4
test eax, eax
je 0x46bbcb
push 0
push 0
push 0x194
jmp 0x46bbc4
push 1
movzx eax, bx
push eax
push 0xf4
push dword [edx + 0x18]
call dword [esp + 0x20]
push 0
call dword [sym.imp.KERNEL32.DLL_SetLastError]
mov ecx, dword [ebp + 0x10]
push ebx
push 0xfffffffffffffff0
push dword [ecx + 0x18]
call dword [sym.imp.USER32.dll_SetWindowLongW]
test eax, eax
jne 0x46bbf0
call dword [sym.imp.KERNEL32.DLL_GetLastError]
test eax, eax
jne 0x46bc1b
mov eax, dword [ebp + 0x10]
push 0xfffffffffffffff0
push dword [eax + 0x18]
call dword [esp + 0x34]
mov ecx, dword [esp + 0x18]
cmp eax, esi
movzx ecx, cl
mov eax, 1
cmovne ecx, eax
mov dword [esp + 0x18], ecx
jmp 0x46bc1b
mov al, byte [esp + 0x17]
mov dword [esp + 0x18], eax
mov al, byte [esp + 0xf]
mov byte [esp + 0x17], al
mov eax, dword [ebp + 0x10]
push 0xffffffffffffffec
push dword [eax + 0x18]
call dword [esp + 0x34]
mov esi, dword [edi + 8]
mov ecx, dword [edi + 0xc]
or esi, eax
not ecx
mov dword [esp + 0x3c], eax
and esi, ecx
cmp eax, esi
je 0x46bcb5
mov cl, byte [esp + 0xf]
movzx eax, cl
test cl, cl
mov ecx, 1
cmove eax, ecx
mov byte [esp + 0xf], al
mov eax, dword [esp + 0x18]
and al, byte [esp + 0x17]
push 0
mov dword [esp + 0x1c], eax
mov byte [esp + 0x1b], al
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push esi
mov esi, dword [ebp + 0x10]
push 0xffffffffffffffec
push dword [esi + 0x18]
call dword [sym.imp.USER32.dll_SetWindowLongW]
test eax, eax
jne 0x46bc95
mov eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
call dword [sym.imp.KERNEL32.DLL_GetLastError]
test eax, eax
jne 0x46bcb8
push 0xffffffffffffffec
push dword [esi + 0x18]
call dword [esp + 0x34]
cmp eax, dword [esp + 0x3c]
mov eax, 1
movzx ecx, byte [esp + 0x17]
cmovne ecx, eax
mov byte [esp + 0x18], cl
jmp 0x46bcb8
mov esi, dword [ebp + 0x10]
cmp byte [esi + 0x30], 0xa
jne 0x46bd16
push 0
push 0
push 0x1037
push dword [esi + 0x18]
call dword [esp + 0x20]
mov esi, eax
mov eax, dword [edi + 0x10]
cmp esi, eax
je 0x46bd16
cmp byte [esp + 0xf], 0
jne 0x46bce8
mov byte [esp + 0xf], 1
mov byte [esp + 0x18], 0
push eax
mov eax, dword [ebp + 0x10]
push 0
push 0x1036
push dword [eax + 0x18]
call dword [esp + 0x20]
mov eax, dword [ebp + 0x10]
push 0
push 0
push 0x1037
push dword [eax + 0x18]
call dword [esp + 0x20]
cmp eax, esi
je 0x46bd1d
mov byte [esp + 0x18], 1
cmp byte [esp + 0xf], 0
je 0x46bd35
mov eax, dword [esp + 0x1c]
mov ecx, 1
cmp byte [esp + 0x18], 0
movzx eax, al
cmovne eax, ecx
mov dword [esp + 0x1c], eax
mov edx, dword [ebp + 0x10]
mov esi, dword [sym.imp.USER32.dll_GetSysColor]
movzx eax, byte [edx + 0x30]
add eax, 0xfffffff7
cmp eax, 0x10
ja case.0x46bd55.13
movzx eax, byte [eax + 0x46c474]
jmp dword [eax*4 + 0x46c450]
cmp byte [edi + 0x18a], 0
je case.0x46bd55.13
push dword [edi + 0x38]
push dword [edi + 0x34]
push 0x46f
jmp 0x46c0de
cmp byte [edi + 0x18a], 0
mov ebx, dword [esp + 0x10]
je 0x46bdaa
push dword [edi + 0x34]
push 0
push 0x407
push dword [edx + 0x18]
call ebx
push dword [edi + 0x38]
mov eax, dword [ebp + 0x10]
push 1
push 0x408
push dword [eax + 0x18]
call ebx
mov edx, dword [ebp + 0x10]
cmp byte [edi + 0x18b], 0
je 0x46bdcc
mov eax, dword [edi + 0x3c]
test eax, eax
jns 0x46be76
push 0
push 1
push 0x409
push dword [edx + 0x18]
call ebx
mov ebx, dword [ebp + 0x10]
mov eax, dword [edi + 0x40]
test eax, eax
jle 0x46bde5
push eax
push 0
push 0x417
push dword [ebx + 0x18]
call dword [esp + 0x20]
mov eax, dword [edi + 0x44]
test eax, eax
jle 0x46bdfb
push eax
push 0
push 0x415
push dword [ebx + 0x18]
call dword [esp + 0x20]
mov eax, dword [edi + 0x48]
test eax, eax
jle 0x46be11
push 0
push eax
push 0x41b
push dword [ebx + 0x18]
call dword [esp + 0x20]
mov eax, dword [edi + 0x4c]
test eax, eax
je 0x46be28
push 0
dec eax
push eax
push 0x41f
push dword [ebx + 0x18]
call dword [esp + 0x20]
mov eax, dword [edi + 0x50]
test eax, eax
je 0x46be40
push dword [eax + 0x18]
push 1
push 0x420
push dword [ebx + 0x18]
call dword [esp + 0x20]
mov eax, dword [edi + 0x54]
test eax, eax
je 0x46be58
push dword [eax + 0x18]
push 0
push 0x420
push dword [ebx + 0x18]
call dword [esp + 0x20]
test dword [edi + 4], 0x100
je case.0x46bd55.13
push 0
push 0
push 0x41d
push dword [ebx + 0x18]
jmp 0x46c0e1
cmp byte [edi + 0x18c], 0
je 0x46be8c
push 0
push eax
push 0x414
jmp 0x46bdc7
cmp byte [edi + 0x18a], 0
jne 0x46bdcc
push 0
push 0
push 0x402
push dword [edx + 0x18]
call ebx
mov ebx, dword [ebp + 0x10]
push eax
push 1
push 0x408
push dword [ebx + 0x18]
call dword [esp + 0x20]
jmp 0x46bdcf
cmp dword [edi + 0x60], 0
mov ebx, dword [esp + 0x10]
je 0x46bf00
push 0
push 0
push 0x1004
push dword [edx + 0x18]
call ebx
test eax, eax
jle 0x46bef1
mov eax, dword [ebp + 0x10]
push 0
push dword [edi + 0x60]
push 0x102f
push dword [eax + 0x18]
call ebx
mov edx, dword [ebp + 0x10]
jmp 0x46bf00
mov edx, dword [ebp + 0x10]
mov eax, dword [edi + 0x60]
mov ecx, dword [edx + 0x3c]
mov dword [ecx + 0x3f4], eax
mov eax, dword [edi + 0x58]
cmp eax, 0xffffffff
jne 0x46bf13
cmp dword [edi + 0x5c], eax
je case.0x46bd55.13
jmp 0x46bf27
push eax
push 0
push 0x1024
push dword [edx + 0x18]
call ebx
mov dword [edi + 0x58], 0xffffffff
mov esi, dword [edi + 0x5c]
cmp esi, 0xffffffff
je 0x46bf64
cmp esi, 0xff000000
jne 0x46bf41
push 5
call dword [sym.imp.USER32.dll_GetSysColor]
mov esi, eax
mov ebx, dword [ebp + 0x10]
push esi
push 0
push 0x1026
push dword [ebx + 0x18]
call dword [esp + 0x20]
push esi
push 0
push 0x1001
push dword [ebx + 0x18]
call dword [esp + 0x20]
jmp 0x46bf67
mov ebx, dword [ebp + 0x10]
push 1
push 0
push dword [ebx + 0x18]
mov ebx, dword [sym.imp.USER32.dll_InvalidateRect]
call ebx
mov esi, dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x46c0eb
mov eax, dword [edi + 0x58]
mov ebx, dword [esp + 0x10]
cmp eax, 0xffffffff
je 0x46bfb1
cmp eax, 0xff000000
mov ecx, 0xffffffff
cmove eax, ecx
push eax
push 0
push 0x111e
push dword [edx + 0x18]
call ebx
mov edx, dword [ebp + 0x10]
mov dword [edi + 0x58], 0xffffffff
mov eax, dword [edi + 0x5c]
cmp eax, 0xffffffff
je case.0x46bd55.13
cmp eax, 0xff000000
mov ecx, 0xffffffff
cmove eax, ecx
push eax
push 0
push 0x111d
push dword [edx + 0x18]
call ebx
jmp case.0x46bd55.13
test dword [edi + 0x58], 0xff000000
je 0x46bff3
test dword [edi + 0x5c], 0xff000000
je 0x46bff3
test bl, 1
je 0x46c009
push 0x4cee98
push 0x4cee98
push dword [edx + 0x18]
call dword [sym.imp.UxTheme.dll_SetWindowTheme]
mov edx, dword [ebp + 0x10]
mov eax, dword [edi + 0x34]
test eax, eax
jne 0x46c015
cmp dword [edi + 0x38], eax
je 0x46c025
push dword [edi + 0x38]
push eax
push 0x406
push dword [edx + 0x18]
call dword [esp + 0x20]
mov eax, dword [edi + 0x58]
cmp eax, 0xffffffff
je 0x46c03f
push eax
mov eax, dword [ebp + 0x10]
push 0
push 0x409
push dword [eax + 0x18]
call dword [esp + 0x20]
mov eax, dword [edi + 0x5c]
cmp eax, 0xffffffff
je 0x46c059
push eax
mov eax, dword [ebp + 0x10]
push 0
push 0x2001
push dword [eax + 0x18]
call dword [esp + 0x20]
cmp dword [esp + 0x24], ebx
je case.0x46bd55.13
mov eax, dword [ebp + 0x10]
push 0
push dword [esp + 0x48]
push 0x402
push dword [eax + 0x18]
jmp 0x46c0e1
mov ecx, dword [edi + 0x138]
test ecx, ecx
je case.0x46bd55.13
lea eax, [edi + 0x70]
push eax
push ecx
push 0xcb
push dword [edx + 0x18]
call dword [esp + 0x20]
mov ebx, dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, 1
mov dword [esp + 0x1c], eax
jmp 0x46c0ef
mov ecx, dword [edi + 0x138]
test ecx, ecx
je case.0x46bd55.13
lea eax, [edi + 0x70]
push eax
push ecx
push 0x192
push dword [edx + 0x18]
call dword [esp + 0x20]
mov ebx, dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, 1
mov dword [esp + 0x1c], eax
jmp 0x46c0ef
mov eax, dword [edi + 0x5c]
cmp eax, 0xffffffff
je case.0x46bd55.13
push eax
push 0
push 0x2001
push dword [edx + 0x18]
call dword [esp + 0x20]
mov ebx, dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi + 0x58]
cmp ecx, 0xffffffff
je 0x46c1aa
mov eax, dword [ebp + 0x10]
movzx eax, byte [eax + 0x30]
lea edx, [eax - 0xa]
cmp edx, 4
ja case.0x46c10e.12
jmp dword [edx*4 + 0x46c488]
mov eax, dword [ebp + 0x10]
push ecx
push 0
push 0x1024
push dword [eax + 0x18]
call dword [esp + 0x20]
jmp 0x46c1a4
cmp ecx, 0xff000000
mov eax, 0xffffffff
cmove ecx, eax
mov eax, dword [ebp + 0x10]
push ecx
push 0
push 0x111e
push dword [eax + 0x18]
call dword [esp + 0x20]
jmp 0x46c1a4
cmp ecx, 0xff000000
jne 0x46c15c
push 8
call esi
mov ecx, eax
mov eax, dword [ebp + 0x10]
push ecx
push 1
push 0x1006
push dword [eax + 0x18]
call dword [esp + 0x20]
jmp 0x46c1a4
cmp ecx, 0xff000000
jne 0x46c17e
push 8
call esi
mov ecx, eax
mov eax, dword [ebp + 0x10]
push ecx
push 1
push 0x100a
push dword [eax + 0x18]
call dword [esp + 0x20]
jmp 0x46c1a4
mov al, byte [eax + 0x4db574]
not al
test al, 0x20
je 0x46c1a4
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x3c], ecx
mov al, 1
mov dword [esp + 0x1c], eax
mov ecx, dword [edi + 0x184]
mov esi, dword [ebp + 0x10]
test ecx, ecx
je 0x46c1de
xor eax, eax
cmp ecx, 3
push 0
sete al
push eax
push 0xb
push dword [esi + 0x18]
call dword [esp + 0x20]
cmp dword [edi + 0x184], 3
jne 0x46c1da
cmp byte [esi + 0x30], 0xb
jne 0x46c1e2
mov eax, dword [esp + 0x1c]
test al, al
je 0x46c1eb
push 1
push 0
push dword [esi + 0x18]
call ebx
cmp byte [esp + 0xf], 0
je 0x46c220
cmp byte [esp + 0x18], 0
jne 0x46c220
push 0
push 0
push dword [0x4ea504]
mov ecx, 0x4e9ec0
push 0x4cee98
push 0x4d2a50
call fcn.0040c3f0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x10