Function at 0x488840
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
push 0xffffffffffffffff
push 0x544589
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x340
push ebx
push ebp
push esi
mov esi, ecx
xor ebx, ebx
push edi
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], ebx
call fcn.00473110
mov edi, dword [esp + 0x360]
mov dword [esp + 0x358], ebx
cmp edi, 0x2020032
mov ebp, 1
je 0x4889ac
cmp edi, 0x2020033
je 0x4889ac
test byte [esp + 0x364], 0xf
je 0x4889ac
test edi, 0x80000000
jne 0x4889ac
cmp dword [esi + 0x398], ebp
je 0x4888c5
cmp dword [esi + 0x394], ebx
je 0x4888e8
lea ecx, [esp + 0x24]
mov dword [esp + 0x358], 0xffffffff
mov dword [esp + 0x24], 0x54d7d0
call fcn.00473310
mov eax, ebp
jmp 0x48a395
cmp edi, 0x202000a
je 0x488996
cmp edi, 0x202001c
je 0x488996
cmp edi, 0x202000b
je 0x48898f
cmp edi, 0x202001b
je 0x48898f
cmp edi, 0x202000c
je 0x488988
cmp edi, 0x202001d
je 0x488988
cmp edi, 0x2020010
je 0x488981
cmp edi, 0x202007e
je 0x488981
cmp edi, 0x2020011
jne 0x488943
mov byte [esp + 0x18], 7
jmp 0x488958
cmp edi, 0x2020012
setne al
dec eax
and eax, 8
cmp al, bl
mov byte [esp + 0x18], al
je 0x48899d
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x24]
push eax
call fcn.00473450
push ebx
lea ecx, [esp + 0x28]
call fcn.004733d0
push ebx
lea ecx, [esp + 0x28]
call fcn.00473450
lea ecx, [esp + 0x24]
push ecx
jmp 0x48899e
mov byte [esp + 0x18], 6
jmp 0x488958
mov byte [esp + 0x18], 4
jmp 0x488958
mov byte [esp + 0x18], 3
jmp 0x488958
mov byte [esp + 0x18], 2
jmp 0x488958
push ebx
mov ecx, 0x59a4e0
call fcn.004e7b20
mov dword [esp + 0x3c], ebp
cmp edi, 0x2020032
mov ebp, 0x54d7d0
ja 0x488e32
je 0x488e0d
lea eax, [edi - 0x202000a]
cmp eax, 0x13
ja case.0x489e7c.33685628
jmp dword [eax*4 + 0x48a3b0]
mov edx, dword [esi + 0x384]
not edx
test dl, 1
jne case.0x48a29e.6
lea eax, [esi + 0xc0]
push 0xffffffffffffffff
push eax
mov ecx, esi
call fcn.004ea180
push ebx
push ebx
push ebx
push 2
mov ecx, esi
mov edi, eax
call fcn.00408260
mov ecx, esi
call fcn.00457b30
push 0xffffffffffffffff
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push edi
push 2
mov ecx, esi
call fcn.00403170
jmp case.0x48a29e.6
mov ecx, dword [esi + 0x384]
not ecx
test cl, 1
jne case.0x48a29e.6
lea edx, [esi + 0xc0]
push 0xffffffffffffffff
push edx
mov ecx, esi
call fcn.004ea380
push ebx
push ebx
push ebx
push 3
mov ecx, esi
mov edi, eax
call fcn.00408260
mov ecx, esi
call fcn.00457b30
push 0xffffffffffffffff
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push edi
push 3
mov ecx, esi
call fcn.00403170
jmp case.0x48a29e.6
mov eax, dword [esi + 0x384]
not eax
test al, 1
jne case.0x48a29e.6
lea ecx, [esi + 0xc0]
push 0xffffffffffffffff
push ecx
mov ecx, esi
call fcn.004ea510
push ebx
push ebx
push ebx
push 4
mov ecx, esi
mov edi, eax
call fcn.00408260
mov ecx, esi
call fcn.00457b30
push 0xffffffffffffffff
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push edi
push 4
mov ecx, esi
call fcn.00403170
jmp case.0x48a29e.6
mov edx, dword [esi + 0x384]
not edx
test dl, 1
jne case.0x48a29e.6
lea eax, [esi + 0xc0]
push 0xffffffffffffffff
push eax
mov ecx, esi
call fcn.004ea910
push ebx
push ebx
push ebx
push 7
mov ecx, esi
mov edi, eax
call fcn.00408260
push 0xffffffffffffffff
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push edi
push 7
mov ecx, esi
call fcn.00403170
jmp case.0x48a29e.6
mov ecx, dword [esi + 0x384]
not ecx
test cl, 1
jne case.0x48a29e.6
lea edx, [esi + 0xc0]
push 0xffffffffffffffff
push edx
mov ecx, esi
call fcn.004ea930
push ebx
push ebx
push ebx
push 8
mov ecx, esi
mov edi, eax
call fcn.00408260
push 0xffffffffffffffff
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push edi
push 8
mov ecx, esi
call fcn.00403170
jmp case.0x48a29e.6
mov eax, dword [esi + 0x384]
not eax
test al, 1
jne case.0x48a29e.6
mov edx, dword [esp + 0x368]
lea ecx, [esp + 0x10]
push ecx
push edx
lea ecx, [esi + 0x2cc]
call fcn.004d29c0
cmp eax, 1
jne case.0x48a29e.6
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x3c]
mov edx, dword [eax + 0x3c]
shr ecx, 2
cmp edx, ebx
jne 0x488b8c
xor eax, eax
jmp 0x488b8f
mov eax, dword [eax + 0x34]
mov edx, dword [esp + 0x36c]
cmp edx, ecx
jge case.0x48a29e.6
mov ecx, edx
lea edx, [esp + 0x14]
push ebx
push edx
mov edi, dword [eax + ecx*4]
lea ebp, [ecx*4]
lea ecx, [esi + 0x2b0]
push edi
call fcn.004d2a60
cmp eax, 1
jne case.0x48a29e.6
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0xc]
and eax, 0x30
cmp eax, 0x10
je 0x488c24
cmp eax, 0x20
je 0x488c24
mov ecx, dword [esp + 0x36c]
lea edx, [esi + 0xc0]
push ecx
push edi
push edx
mov ecx, esi
call fcn.004eab30
push 1
push edi
lea ecx, [esi + 0x2b0]
call fcn.004c8630
mov eax, dword [esp + 0x10]
push 4
push ebp
lea ecx, [eax + 0x2c]
call fcn.00473b50
push ebx
push ebx
push ebx
push ebx
mov ecx, esi
call fcn.00408260
mov ecx, esi
call fcn.00457b30
jmp case.0x48a29e.6
push 0x58f320
mov ecx, 0x59a350
call fcn.00519753
mov ecx, dword [0x59a2f4]
mov dword [0x59a354], 0x10
push ebx
push 0x73
mov edx, dword [ecx + 0x1c]
push 0x111
push edx
call dword [sym.imp.USER32.dll_PostMessageA]
jmp case.0x48a29e.6
mov eax, dword [esi + 0x384]
not eax
test al, 1
jne case.0x48a29e.6
mov ebp, dword [esp + 0x368]
lea edi, [esi + 0x2cc]
push ebp
mov ecx, edi
call fcn.004d2a00
cmp eax, ebx
mov dword [esp + 0x14], eax
je case.0x48a29e.6
lea ecx, [esp + 0x10]
push ecx
push ebp
mov ecx, edi
call fcn.004d29c0
cmp eax, 1
jne case.0x48a29e.6
mov edx, dword [esi + 0x3dc]
mov eax, ebx
dec edx
js 0x488cf1
mov edi, dword [esi + 0x3d8]
mov ebp, dword [esp + 0x10]
mov ecx, dword [edi]
cmp dword [ecx + 0x3c], 1
jne 0x488cc3
cmp dword [ecx + 0x54], ebp
je 0x488ccd
inc eax
add edi, 4
cmp eax, edx
jle 0x488cb6
jmp 0x488cf1
cmp eax, edx
jg 0x488cf1
mov dword [esp + 0x34], ebx
mov edx, dword [ecx]
lea eax, [esp + 0x24]
push eax
call dword [edx + 0xd0]
lea ecx, [esp + 0x24]
push ecx
mov ecx, 0x59a4e0
call fcn.004e7ad0
mov edx, dword [esp + 0x10]
mov ecx, esi
push edx
push 1
call fcn.004083d0
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x368]
mov ecx, dword [esp + 0x10]
push edi
push eax
lea edx, [esi + 0xc0]
push ecx
push edx
mov ecx, esi
call fcn.004eac60
push 1
push edi
lea ecx, [esi + 0x2cc]
call fcn.004c7e50
jmp 0x488c0d
mov eax, dword [esi + 0x384]
not eax
test al, 1
jne case.0x48a29e.6
mov ebp, dword [esp + 0x368]
push ebx
push 1
lea edi, [esi + 0x290]
push ebp
push ebx
push edi
mov ecx, 0x599a48
call fcn.004ea040
push ebp
push ebp
mov ecx, edi
call fcn.004c5960
jmp 0x488c0d
mov ecx, dword [esi + 0x384]
not ecx
test cl, 1
jne case.0x48a29e.6
mov edx, dword [esp + 0x368]
lea ebp, [esi + 0x274]
push edx
mov ecx, ebp
call fcn.004d2a00
mov edi, eax
cmp edi, ebx
je case.0x48a29e.6
push edi
lea eax, [esi + 0xc0]
push 2
push eax
mov ecx, esi
call fcn.004e9ec0
push 1
push edi
mov ecx, ebp
call fcn.004c8990
jmp 0x488c0d
mov ecx, dword [esi + 0x384]
not ecx
test cl, 1
jne case.0x48a29e.6
mov edx, dword [esp + 0x368]
lea ebp, [esi + 0x2e8]
push edx
mov ecx, ebp
call fcn.004d2a00
mov edi, eax
cmp edi, ebx
je case.0x48a29e.6
push edi
lea eax, [esi + 0xc0]
push 4
push eax
mov ecx, esi
call fcn.004e9ec0
push 1
push edi
mov ecx, ebp
call fcn.004c8b80
jmp 0x488c0d
cmp dword [esi + 0x398], 1
je 0x48a374
cmp dword [esi + 0x394], ebx
jne 0x48a374
mov ecx, esi
call fcn.0048ad50
jmp case.0x48a29e.6
cmp edi, 0x2020079
ja 0x489e5b
je 0x489e2d
lea eax, [edi - 0x2020033]
cmp eax, 0x3d
ja case.0x489e7c.33685628
xor ecx, ecx
mov cl, byte [eax + 0x48a428]
jmp dword [ecx*4 + 0x48a400]
mov ecx, esi
call fcn.0048aa20
jmp case.0x48a29e.6
cmp dword [esi + 0x674], 0x19dc775b
jne 0x488eb0
push 0x58f2f4
mov ecx, 0x59a350
call fcn.00519753
mov edx, dword [0x59a2f4]
mov dword [0x59a354], 0x40
push ebx
push 0x73
mov eax, dword [edx + 0x1c]
push 0x111
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
jmp case.0x48a29e.6
mov ecx, dword [esi + 0x384]
not ecx
test cl, 1
jne case.0x48a29e.6
lea eax, [esi + 0x2cc]
cmp edi, 0x202000d
mov edi, dword [0x593ce4]
mov dword [esp + 0x20], eax
je 0x488edf
mov edi, dword [0x593cec]
mov edx, dword [0x59697c]
mov dword [esp + 0x10], edx
lea eax, [esp + 0x10]
lea ecx, [esp + 0x20]
push eax
push edi
push ebx
push ecx
push 1
mov byte [esp + 0x36c], 1
call fcn.004c6e00
add esp, 0x14
test eax, eax
jne 0x488f15
push edi
lea ecx, [esp + 0x14]
call fcn.00519753
push 0x54
call fcn.0051a4c6
mov edi, eax
add esp, 4
mov dword [esp + 0x14], edi
cmp edi, ebx
je 0x488f84
mov edx, dword [0x59697c]
lea ebp, [esi + 0xc0]
mov dword [edi], edx
mov eax, dword [0x59697c]
mov dword [edi + 4], eax
lea ecx, [edi + 0x14]
mov byte [esp + 0x358], 4
call fcn.00473110
mov dword [edi + 0x28], ebp
mov dword [edi + 0x10], ebx
mov dword [edi + 0xc], 0x54d958
lea ecx, [edi + 0x2c]
mov byte [esp + 0x358], 5
call fcn.00473110
mov dword [edi + 0x50], ebp
mov dword [edi + 0x40], ebx
mov dword [edi + 0x44], ebx
mov dword [edi + 0x4c], ebx
mov dword [edi + 0x48], ebx
mov dword [edi + 8], ebx
mov dword [esp + 0x18], edi
jmp 0x488f88
mov dword [esp + 0x18], ebx
lea ecx, [esp + 0x10]
mov byte [esp + 0x358], 1
push ecx
mov ecx, dword [esp + 0x1c]
call fcn.00519703
lea ecx, [esp + 0x48]
call fcn.00473110
lea ebp, [esi + 0xc0]
mov dword [esp + 0x40], 0x54d878
mov dword [esp + 0x44], ebp
mov edi, dword [esp + 0x360]
mov byte [esp + 0x358], 6
cmp edi, 0x202006a
jne 0x488fee
mov eax, dword [esp + 0x18]
push 0x40000000
push eax
lea ecx, [esp + 0x48]
mov dword [eax + 0x44], 0xffffffff
mov edx, dword [esp + 0x48]
call dword [edx + 0x10]
jmp 0x488ffe
mov eax, dword [esp + 0x18]
push ebx
push eax
lea ecx, [esp + 0x48]
call dword [0x54d888]
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x2e4]
push 1
lea ecx, [esp + 0x44]
push ebx
push ecx
shr eax, 3
push eax
push 0x131
mov ecx, esi
call fcn.004eadd0
mov eax, dword [esi + 0x2e4]
push 1
lea edx, [esp + 0x44]
push ebx
shr eax, 3
push edx
push eax
lea ecx, [esi + 0x2cc]
call fcn.004d2b40
lea ecx, [esp + 0x48]
call fcn.00473310
cmp edi, 0x202006a
jne 0x4891be
mov dword [esp + 0x38], ebx
push 0xd0
call fcn.0051a4c6
mov edi, eax
add esp, 4
mov dword [esp + 0x1c], edi
cmp edi, ebx
je 0x489130
mov eax, dword [0x59697c]
mov dword [edi], eax
mov ecx, dword [0x59697c]
mov dword [edi + 4], ecx
lea ecx, [edi + 0x14]
push ebp
mov byte [esp + 0x35c], 9
call fcn.0040bdb0
mov dword [edi + 0x14], 0x54d958
lea ecx, [edi + 0x3c]
mov byte [esp + 0x358], 0xa
call fcn.00473110
mov dword [edi + 0x50], ebp
mov dword [edi + 0x38], ebx
mov dword [edi + 0x34], 0x54d958
lea ecx, [edi + 0x54]
mov byte [esp + 0x358], 0xb
call fcn.00473110
lea ecx, [edi + 0x68]
mov byte [esp + 0x358], 0xc
call fcn.00473110
lea ecx, [edi + 0x7c]
mov byte [esp + 0x358], 0xd
call fcn.00473110
lea ecx, [edi + 0x90]
mov byte [esp + 0x358], 0xe
call fcn.00473110
lea ecx, [edi + 0xa4]
mov byte [esp + 0x358], 0xf
call fcn.00473110
lea ecx, [edi + 0xb8]
mov byte [esp + 0x358], 0x10
call fcn.00473110
mov dword [edi + 0xc], ebx
mov dword [edi + 0x10], ebx
mov dword [edi + 8], ebx
mov dword [edi + 0xcc], ebp
jmp 0x489132
xor edi, edi
mov eax, dword [esp + 0x38]
mov byte [esp + 0x358], 6
cmp eax, ebx
mov eax, dword [0x593c44]
je 0x48914c
mov eax, dword [0x593c48]
push eax
mov ecx, edi
call fcn.00519753
mov eax, dword [esp + 0x38]
cmp eax, ebx
mov eax, 0x58f2c4
je 0x489166
mov eax, 0x58f294
push eax
lea ecx, [edi + 4]
call fcn.00519753
mov edx, dword [esp + 0x14]
push ebx
push ebx
mov ecx, edi
mov dword [edi + 8], edx
call fcn.004ccbf0
mov eax, dword [esi + 0x2b0]
lea ecx, [esi + 0x2b0]
push ebx
push edi
call dword [eax + 0x10]
mov ecx, dword [esp + 0x18]
mov edi, eax
push edi
add ecx, 0x2c
call fcn.004733d0
push edi
push ebx
push ebp
mov ecx, 0x599a48
call fcn.004e9d90
mov eax, dword [esp + 0x38]
inc eax
cmp eax, 2
mov dword [esp + 0x38], eax
jl 0x489056
mov ecx, esi
call fcn.00457b30
mov edx, dword [esp + 0x18]
mov ecx, esi
push edx
push 1
call fcn.00408690
cmp eax, ebx
je 0x4891f9
lea ecx, [esp + 0x24]
mov dword [esp + 0x34], ebx
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 0xd0]
lea edx, [esp + 0x24]
mov ecx, 0x59a4e0
push edx
call fcn.004e7ad0
mov dword [esp + 0x40], 0x54d878
lea ecx, [esp + 0x40]
mov byte [esp + 0x358], 0x11
call fcn.004c80a0
mov dword [esp + 0x40], 0x54d7f4
lea ecx, [esp + 0x48]
mov byte [esp + 0x358], 0x12
call fcn.00473310
lea ecx, [esp + 0x48]
mov byte [esp + 0x358], 1
mov dword [esp + 0x48], 0x54d7d0
call fcn.00473310
lea ecx, [esp + 0x10]
mov byte [esp + 0x358], bl
call fcn.00519616
jmp case.0x48a29e.6
lea edi, [esi + 0xc0]
mov ecx, edi
call fcn.00455380
test eax, eax
jne 0x48929f
push 0x58f250
mov ecx, 0x59a350
call fcn.00519753
mov eax, dword [0x59a2f4]
mov dword [0x59a354], 0x40
push ebx
push 0x73
mov ecx, dword [eax + 0x1c]
push 0x111
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
jmp case.0x48a29e.6
cmp dword [esi + 0x674], 0x19dc775b
jne 0x4892e1
push 0x58f230
mov ecx, 0x59a350
call fcn.00519753
mov edx, dword [0x59a2f4]
mov dword [0x59a354], 0x40
push ebx
push 0x73
mov eax, dword [edx + 0x1c]
push 0x111
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
jmp case.0x48a29e.6
mov ecx, dword [esi + 0x384]
not ecx
test cl, 1
jne case.0x48a29e.6
mov ecx, dword [esi + 0x8ac]
call fcn.0051a9f4
push 0xffffffffffffffff
push edi
mov ecx, esi
call fcn.004ea720
push ebx
push ebx
push ebx
push 5
mov ecx, esi
mov edi, eax
call fcn.00408260
mov ecx, esi
call fcn.00457b30
push 0xffffffffffffffff
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push edi
push 5
mov ecx, esi
call fcn.00403170
cmp eax, ebx
je case.0x48a29e.6
lea ecx, [esp + 0x24]
mov dword [esp + 0x34], ebx
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 0xd0]
lea edx, [esp + 0x24]
mov ecx, 0x59a4e0
push edx
call fcn.004e7ad0
jmp case.0x48a29e.6
mov eax, dword [esi + 0x384]
not eax
test al, 1
jne case.0x48a29e.6
mov ebp, dword [esp + 0x368]
lea edi, [esi + 0x304]
push ebp
mov ecx, edi
call fcn.004d2a00
cmp eax, ebx
mov dword [esp + 0x20], eax
je case.0x48a29e.6
lea ecx, [esp + 0x14]
push ecx
push ebp
mov ecx, edi
call fcn.004d29c0
cmp eax, 1
jne case.0x48a29e.6
mov eax, dword [esi + 0x3dc]
mov edx, ebx
dec eax
js 0x4893f3
mov edi, dword [esi + 0x3d8]
mov ebp, dword [esp + 0x14]
mov ecx, dword [edi]
cmp dword [ecx + 0x3c], 5
jne 0x4893c5
cmp dword [ecx + 0x4c], ebp
je 0x4893cf
inc edx
add edi, 4
cmp edx, eax
jle 0x4893b8
jmp 0x4893f3
cmp edx, eax
jg 0x4893f3
mov dword [esp + 0x34], ebx
mov edx, dword [ecx]
lea eax, [esp + 0x24]
push eax
call dword [edx + 0xd0]
lea ecx, [esp + 0x24]
push ecx
mov ecx, 0x59a4e0
call fcn.004e7ad0
mov edx, dword [esp + 0x14]
mov ecx, esi
push edx
push 5
call fcn.004083d0
mov edi, dword [esp + 0x20]
lea eax, [esi + 0xc0]
push edi
push 5
push eax
mov ecx, esi
call fcn.004e9ec0
push 1
push edi
lea ecx, [esi + 0x304]
call fcn.004c8be0
push ebx
push ebx
push ebx
push ebx
mov ecx, esi
call fcn.00408260
mov ecx, esi
call fcn.00457b30
mov ecx, esi
call fcn.00459a80
jmp case.0x48a29e.6
cmp dword [esi + 0x398], 1
je 0x48a374
cmp dword [esi + 0x394], ebx
jne 0x48a374
mov ecx, esi
call fcn.0048ad70
jmp case.0x48a29e.6
mov ecx, dword [0x59697c]
mov dword [esp + 0x10], ecx
lea edx, [esp + 0x10]
push ebx
push edx
push ebx
mov ecx, esi
mov byte [esp + 0x364], 0x14
call fcn.00435450
test eax, eax
je 0x489dd2
lea ecx, [esp + 0x60]
call fcn.00447030
lea eax, [esp + 0x9c]
mov dword [esp + 0x1c], eax
mov eax, dword [0x59697c]
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
lea ecx, [esp + 0x9c]
mov byte [esp + 0x358], 0x1e
call fcn.0040c2a0
lea ecx, [esp + 0xf4]
mov byte [esp + 0x358], 0x1f
call fcn.00518201
lea ecx, [esp + 0x108]
mov byte [esp + 0x358], 0x20
call fcn.0051865f
lea ecx, [esp + 0x11c]
mov byte [esp + 0x358], 0x21
call fcn.00473110
mov edi, 0x54d910
mov dword [esp + 0x11c], edi
lea ecx, [esp + 0x130]
mov byte [esp + 0x358], 0x22
call fcn.0051865f
lea ecx, [esp + 0x144]
mov byte [esp + 0x358], 0x23
call fcn.0051865f
lea ecx, [esp + 0x158]
mov byte [esp + 0x358], 0x24
call fcn.00518201
lea ecx, [esp + 0x180]
mov byte [esp + 0x358], 0x25
call fcn.00473110
mov eax, dword [0x59697c]
mov dword [esp + 0x194], eax
mov dword [esp + 0x198], eax
lea ecx, [esp + 0x1a0]
mov byte [esp + 0x358], 0x28
call fcn.00518201
lea ecx, [esp + 0x1b4]
mov byte [esp + 0x358], 0x29
call fcn.00473110
mov dword [esp + 0x1b4], edi
mov dword [esp + method.CCommandLineInfo.virtual_0], 0x54d904
mov dword [esp + 0x1cc], ebx
mov dword [esp + 0x1d8], ebx
mov dword [esp + 0x1d4], ebx
mov dword [esp + 0x1d0], ebx
mov byte [esp + 0x358], 0x2b
lea ecx, [esp + 0x1e0]
call fcn.0051865f
push ebx
lea ecx, [esp + 0x1f8]
mov byte [esp + 0x35c], 0x2c
call fcn.0040bdb0
mov dword [esp + fcn.004d28e0], 0x54d914
push ebx
lea ecx, [esp + 0x218]
mov byte [esp + 0x35c], 0x2d
call fcn.0040bed0
mov dword [esp + 0x214], 0x54d84c
push ebx
lea ecx, [esp + 0x234]
mov byte [esp + 0x35c], 0x2e
call fcn.0040bdb0
mov dword [esp + 0x230], 0x54d958
push ebx
lea ecx, [esp + 0x254]
mov byte [esp + 0x35c], 0x2f
call fcn.0040bed0
mov dword [esp + 0x250], 0x54d8a4
push ebx
lea ecx, [esp + 0x270]
mov byte [esp + 0x35c], 0x30
call fcn.0040bed0
mov dword [esp + 0x26c], 0x54d878
push ebx
lea ecx, [esp + 0x28c]
mov byte [esp + 0x35c], 0x31
call fcn.0040bed0
mov dword [esp + 0x288], 0x54d8d4
push ebx
lea ecx, [esp + 0x2a8]
mov byte [esp + 0x35c], 0x32
call fcn.0040bed0
mov dword [esp + 0x2a4], 0x54d820
push ebx
lea ecx, [esp + 0x2c4]
mov byte [esp + 0x35c], 0x33
call fcn.0040bdb0
mov dword [esp + 0x2c0], 0x54d938
lea ecx, [esp + 0x2e8]
mov byte [esp + 0x358], 0x34
call fcn.00473110
mov edi, 0x54d900
mov dword [esp + 0x2e4], ebx
mov dword [esp + 0x2e0], edi
mov eax, dword [0x59697c]
mov dword [esp + 0x328], eax
mov dword [esp + 0x32c], eax
lea ecx, [esp + 0x170]
mov byte [esp + 0x358], 0x37
push ecx
mov dword [esp + 0x1e0], 0xffff
mov dword [esp + 0x328], ebx
mov dword [esp + 0x1a0], ebx
mov dword [esp + 0x170], ebx
call dword [sym.imp.ole32.dll_CoCreateGuid]
push 5
push ebx
lea ecx, [esp + 0xfc]
mov dword [esp + 0x340], ebx
mov dword [esp + 0x33c], ebx
mov dword [esp + 0x344], ebx
mov dword [esp + 0x348], ebx
mov dword [esp + 0x34c], ebx
mov dword [esp + 0x354], ebx
mov dword [esp + 0x350], ebx
call fcn.00518294
push 5
push ebx
lea ecx, [esp + 0x110]
call fcn.005186bf
push 5
push ebx
lea ecx, [esp + 0x138]
call fcn.005186bf
push 5
push ebx
lea ecx, [esp + 0x14c]
call fcn.005186bf
push 5
push ebx
lea ecx, [esp + 0x160]
call fcn.00518294
lea ecx, [esp + 0x60]
lea edx, [esp + 0x60]
lea eax, [esp + 0x60]
mov dword [esp + 0x2a8], ecx
mov dword [esp + 0x28c], edx
mov dword [esp + 0x2dc], eax
lea ecx, [esp + 0x60]
lea edx, [esp + 0x60]
lea eax, [esp + 0x60]
mov dword [esp + 0x24c], ecx
mov dword [esp + 0x254], edx
mov dword [esp + 0x270], eax
lea ecx, [esp + 0x2fc]
lea edx, [esp + 0x60]
lea eax, [esp + 0x60]
push 0x28
push ecx
mov dword [esp + 0x220], edx
mov dword [esp + 0x218], eax
call fcn.00474040
add esp, 8
mov edx, dword [esp + 0x10]
push 1
push ebx
push ebx
push edx
lea ecx, [esp + 0x70]
mov byte [esp + 0x368], 0x38
call fcn.00447af0
test eax, eax
je 0x489898
lea eax, [esp + 0x60]
push ebx
push eax
mov ecx, esi
call fcn.0048a4c0
lea ecx, [esp + 0x60]
mov byte [esp + 0x358], 0x51
call fcn.0044ffb0
lea ecx, [esp + 0x32c]
mov byte [esp + 0x358], 0x50
call fcn.00519616
lea ecx, [esp + 0x328]
mov byte [esp + 0x358], 0x4f
call fcn.00519616
lea ecx, [esp + 0x2e0]
mov dword [esp + 0x2e0], edi
mov dword [esp + 0x1c], ecx
lea ecx, [esp + 0x2e8]
mov byte [esp + 0x358], 0x52
mov dword [esp + 0x2e4], ebx
call fcn.00473310
lea ecx, [esp + 0x2e8]
mov byte [esp + 0x358], 0x4e
mov dword [esp + 0x2e8], ebp
call fcn.00473310
lea edx, [esp + 0x2c0]
mov edi, 0x54d7d4
mov dword [esp + 0x1c], edx
mov dword [esp + 0x2c0], edi
lea ecx, [esp + 0x2c8]
mov byte [esp + 0x358], 0x53
mov dword [esp + 0x2c4], ebx
call fcn.00473310
lea ecx, [esp + 0x2c8]
mov byte [esp + 0x358], 0x4d
mov dword [esp + 0x2c8], ebp
call fcn.00473310
lea eax, [esp + 0x2a4]
mov dword [esp + 0x2a4], 0x54d820
mov dword [esp + 0x1c], eax
lea ecx, [esp + 0x2a4]
mov byte [esp + 0x358], 0x54
call fcn.004d3300
mov esi, 0x54d7f4
mov dword [esp + 0x2a4], esi
lea ecx, [esp + 0x2ac]
mov byte [esp + 0x358], 0x55
call fcn.00473310
lea ecx, [esp + 0x2ac]
mov byte [esp + 0x358], 0x4c
mov dword [esp + 0x2ac], ebp
call fcn.00473310
lea ecx, [esp + 0x288]
mov dword [esp + 0x288], 0x54d8d4
mov dword [esp + 0x1c], ecx
mov byte [esp + 0x358], 0x56
lea ecx, [esp + 0x288]
call fcn.004c9290
mov dword [esp + 0x288], esi
lea ecx, [esp + 0x290]
mov byte [esp + 0x358], 0x57
call fcn.00473310
lea ecx, [esp + 0x290]
mov byte [esp + 0x358], 0x4b
mov dword [esp + 0x290], ebp
call fcn.00473310
lea edx, [esp + 0x26c]
mov dword [esp + 0x26c], 0x54d878
mov dword [esp + 0x1c], edx
lea ecx, [esp + 0x26c]
mov byte [esp + 0x358], 0x58
call fcn.004c80a0
mov dword [esp + 0x26c], esi
lea ecx, [esp + 0x274]
mov byte [esp + 0x358], 0x59
call fcn.00473310
lea ecx, [esp + 0x274]
mov byte [esp + 0x358], 0x4a
mov dword [esp + 0x274], ebp
call fcn.00473310
lea eax, [esp + 0x250]
mov dword [esp + 0x250], 0x54d8a4
mov dword [esp + 0x1c], eax
lea ecx, [esp + 0x250]
mov byte [esp + 0x358], 0x5a
call fcn.004c90f0
mov dword [esp + 0x250], esi
lea ecx, [esp + 0x258]
mov byte [esp + 0x358], 0x5b
call fcn.00473310
lea ecx, [esp + 0x258]
mov byte [esp + 0x358], 0x49
mov dword [esp + 0x258], ebp
call fcn.00473310
lea ecx, [esp + 0x230]
mov dword [esp + 0x230], edi
mov dword [esp + 0x1c], ecx
lea ecx, [esp + 0x238]
mov byte [esp + 0x358], 0x5c
mov dword [esp + 0x234], ebx
call fcn.00473310
lea ecx, [esp + 0x238]
mov byte [esp + 0x358], 0x48
mov dword [esp + 0x238], ebp
call fcn.00473310
lea edx, [esp + 0x214]
mov dword [esp + 0x214], 0x54d84c
mov dword [esp + 0x1c], edx
lea ecx, [esp + 0x214]
mov byte [esp + 0x358], 0x5d
call fcn.004c9450
mov dword [esp + 0x214], esi
lea ecx, [esp + 0x21c]
mov byte [esp + 0x358], 0x5e
call fcn.00473310
lea ecx, [esp + 0x21c]
mov byte [esp + 0x358], 0x47
mov dword [esp + 0x21c], ebp
call fcn.00473310
lea eax, [esp + 0x1f4]
mov dword [esp + 0x1f4], edi
mov dword [esp + 0x1c], eax
lea ecx, [esp + 0x1fc]
mov byte [esp + 0x358], 0x5f
mov dword [esp + 0x1f8], ebx
call fcn.00473310
mov byte [esp + 0x358], 0x46
mov dword [esp + 0x1fc], ebp
lea ecx, [esp + 0x1fc]
call fcn.00473310
lea ecx, [esp + 0x1e0]
mov byte [esp + 0x358], 0x45
call fcn.00518692
mov eax, dword [esp + 0x1cc]
mov dword [esp + method.CCommandLineInfo.virtual_0], 0x54d904
cmp eax, ebx
je 0x489c0e
push eax
call fcn.0051a4ef
add esp, 4
lea ecx, [esp + 0x1b4]
mov byte [esp + 0x358], 0x43
mov dword [esp + 0x1b4], ebp
call fcn.00473310
lea ecx, [esp + 0x1a0]
mov byte [esp + 0x358], 0x42
call fcn.00518234
lea ecx, [esp + 0x198]
mov byte [esp + 0x358], 0x41
call fcn.00519616
lea ecx, [esp + 0x194]
mov byte [esp + 0x358], 0x40
call fcn.00519616
lea ecx, [esp + 0x180]
mov byte [esp + 0x358], 0x3f
mov dword [esp + 0x180], ebp
call fcn.00473310
lea ecx, [esp + 0x158]
mov byte [esp + 0x358], 0x3e
call fcn.00518234
lea ecx, [esp + 0x144]
mov byte [esp + 0x358], 0x3d
call fcn.00518692
lea ecx, [esp + 0x130]
mov byte [esp + 0x358], 0x3c
call fcn.00518692
lea ecx, [esp + 0x11c]
mov byte [esp + 0x358], 0x3b
mov dword [esp + 0x11c], ebp
call fcn.00473310
lea ecx, [esp + 0x108]
mov byte [esp + 0x358], 0x3a
call fcn.00518692
lea ecx, [esp + 0xf4]
mov byte [esp + 0x358], 0x39
call fcn.00518234
lea ecx, [esp + 0x9c]
mov dword [esp + 0x1c], ecx
lea ecx, [esp + 0xc0]
mov byte [esp + 0x358], 0x68
call fcn.00519616
lea ecx, [esp + 0xbc]
mov byte [esp + 0x358], 0x67
call fcn.00519616
lea ecx, [esp + 0xb8]
mov byte [esp + 0x358], 0x66
call fcn.00519616
lea ecx, [esp + 0xb4]
mov byte [esp + 0x358], 0x65
call fcn.00519616
lea ecx, [esp + 0xb0]
mov byte [esp + 0x358], 0x64
call fcn.00519616
lea ecx, [esp + 0xac]
mov byte [esp + 0x358], 0x63
call fcn.00519616
lea ecx, [esp + 0xa8]
mov byte [esp + 0x358], 0x62
call fcn.00519616
lea ecx, [esp + 0xa4]
mov byte [esp + 0x358], 0x61
call fcn.00519616
lea ecx, [esp + 0xa0]
mov byte [esp + 0x358], 0x60
call fcn.00519616
lea ecx, [esp + 0x9c]
mov byte [esp + 0x358], 0x14
call fcn.00519616
lea ecx, [esp + 0x10]
mov byte [esp + 0x358], bl
call fcn.00519616
jmp case.0x48a29e.6
mov edx, dword [esp + 0x36c]
mov eax, dword [esp + 0x368]
push edx
push eax
mov ecx, esi
call fcn.0048a4c0
jmp case.0x48a29e.6
push ebx
push ebx
push ebx
push 0x12
mov ecx, esi
call fcn.00432b00
jmp case.0x48a29e.6
lea ecx, [esi + 0xc0]
call fcn.00426590
mov ecx, dword [esp + 0x368]
mov dword [ecx], eax
jmp case.0x48a29e.6
mov edx, dword [esp + 0x368]
push 1
lea eax, [esi + 0xc0]
push edx
push eax
mov ecx, esi
call fcn.004effe0
mov ecx, dword [esp + 0x36c]
cmp ecx, ebx
je case.0x48a29e.6
mov dword [ecx], eax
jmp case.0x48a29e.6
cmp edi, 0x82020016
ja 0x48a170
je 0x489f79
lea eax, [edi - 0x202007a]
cmp eax, 4
ja case.0x489e7c.33685628
jmp dword [eax*4 + 0x48a468]
mov ecx, dword [esi + 0x384]
not ecx
test cl, 1
jne case.0x48a29e.6
xor edx, edx
cmp edi, 0x202007e
sete dl
push edx
lea eax, [esi + 0xc0]
push 0xffffffffffffffff
push eax
mov ecx, esi
call fcn.004ea8f0
push ebx
push ebx
push ebx
push 6
mov ecx, esi
mov edi, eax
call fcn.00408260
push 0xffffffffffffffff
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push edi
push 6
mov ecx, esi
call fcn.00403170
jmp case.0x48a29e.6
mov ecx, dword [esp + 0x368]
push ebx
lea edx, [esi + 0xc0]
push ecx
push edx
mov ecx, esi
call fcn.004efc20
jmp case.0x48a29e.6
mov eax, dword [esp + 0x368]
mov ecx, esi
push eax
call fcn.004f0180
jmp case.0x48a29e.6
mov ecx, dword [esp + 0x368]
xor ebp, ebp
mov eax, dword [ecx + 8]
cmp eax, ebx
mov dword [esp + 0x20], eax
jle case.0x48a29e.6
mov ecx, dword [esp + 0x368]
lea edx, [esp + 0x5c]
push ebp
push edx
call fcn.0043cf10
mov eax, dword [eax]
push ebx
push eax
lea eax, [esi + 0xc0]
push eax
mov ecx, esi
mov byte [esp + 0x364], 0x13
call fcn.004ee100
lea ecx, [esp + 0x5c]
mov edi, eax
mov byte [esp + 0x358], bl
call fcn.00519616
cmp edi, ebx
je 0x489f6b
mov eax, dword [esp + 0x36c]
mov dword [eax], 1
mov eax, dword [esp + 0x20]
inc ebp
cmp ebp, eax
jl 0x489f1c
jmp case.0x48a29e.6
mov ecx, esi
call fcn.00457a30
mov edi, eax
mov eax, dword [esi + 0x8ac]
add eax, 0x558
push ebx
push 9
push 0x110a
mov ecx, dword [eax + 0x1c]
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, ebx
mov dword [esp + 0x14], eax
je case.0x48a29e.6
mov ecx, dword [esi + 0x8ac]
mov edx, eax
push edx
add ecx, 0x558
call fcn.0051732f
mov ebp, eax
shr eax, 0x1c
je case.0x48a29e.6
dec eax
cmp eax, 7
ja case.default.0x489fd4
jmp dword [eax*4 + 0x48a47c]
test ebp, 0xffff
jbe 0x48a013
cmp edi, ebx
je case.0x48a29e.6
cmp dword [edi + 0x3c], 1
jne case.0x48a29e.6
mov ecx, dword [esp + 0x364]
mov eax, dword [edi]
push ebx
push ebx
push ecx
push 0x2020009
mov ecx, edi
call dword [eax + 0xe0]
jmp case.0x48a29e.6
shr ebp, 0x10
and ebp, 0xfff
lea edx, [esp + 0x20]
dec ebp
push edx
push ebp
lea ecx, [esi + 0x2cc]
call fcn.004d29c0
test eax, eax
je 0x48a04f
mov eax, dword [esp + 0x20]
cmp dword [eax + 0x44], ebx
je 0x48a04f
mov ecx, dword [esp + 0x364]
push ebx
push ebx
push ecx
push 0x202006a
jmp 0x48a34e
mov edx, dword [esp + 0x364]
push ebx
push ebx
push edx
push 0x202000d
jmp 0x48a34e
mov eax, dword [esp + 0x364]
push ebx
push ebx
push eax
push 0x202000b
mov ecx, esi
call fcn.00458370
jmp 0x48a13d
mov ecx, dword [esp + 0x364]
push ebx
push ebx
push ecx
push 0x202000a
mov ecx, esi
call fcn.00458370
jmp 0x48a13d
mov edx, dword [esp + 0x364]
push ebx
push ebx
push edx
push 0x202000c
mov ecx, esi
call fcn.00458370
jmp 0x48a13d
mov eax, dword [esp + 0x364]
push ebx
push ebx
push eax
push 0x2020037
mov ecx, esi
call fcn.00458370
jmp 0x48a13d
mov ecx, dword [esp + 0x364]
push ebx
push ebx
push ecx
push 0x2020010
mov ecx, esi
call fcn.00458370
jmp 0x48a13d
mov eax, ebp
and eax, 0xfffffff
cmp eax, 1
jne 0x48a108
mov edx, dword [esp + 0x364]
push ebx
push ebx
push edx
push 0x2020011
mov ecx, esi
call fcn.00458370
jmp 0x48a13d
cmp eax, 2
jne 0x48a13d
mov eax, dword [esp + 0x364]
push ebx
push ebx
push eax
push 0x2020012
mov ecx, esi
call fcn.00458370
jmp 0x48a13d
mov ecx, esi
call fcn.0046a110
test eax, eax
jne 0x48a13d
jmp case.0x48a29e.6
cmp eax, ebx
je case.0x48a29e.6
test ebp, 0xfffffff
jne case.0x48a29e.6
mov esi, dword [esi + 0x8ac]
mov ecx, dword [esp + 0x14]
add esi, 0x558
push ecx
push 2
push 0x1102
mov edx, dword [esi + 0x1c]
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x48a29e.6
cmp edi, 0x82020017
je 0x48a249
cmp edi, 0x82020078
je 0x48a1c0
cmp edi, 0x8202007c
je 0x48a1c0
cmp dword [esp + 0x3c], 1
jne 0x48a19d
mov ecx, 0x59a4e0
call fcn.004e7bc0
lea ecx, [esp + 0x24]
mov dword [esp + 0x358], 0xffffffff
mov dword [esp + 0x24], 0x54d7d0
call fcn.00473310
xor eax, eax
jmp 0x48a395
mov eax, dword [esi + 0x8ac]
push ebx
add eax, 0x558
push 9
push 0x110a
mov eax, dword [eax + 0x1c]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, ebx
je case.0x48a29e.6
mov ecx, dword [esi + 0x8ac]
push eax
add ecx, 0x558
call fcn.0051732f
mov ecx, eax
and ecx, 0xf0000000
cmp ecx, 0x80000000
jne case.0x48a29e.6
and eax, 0xfffffff
dec eax
cmp edi, 0x82020078
jne 0x48a22d
mov edx, dword [esp + 0x364]
push ebx
push eax
push edx
push 0x2020079
jmp 0x48a34e
cmp eax, ebx
jl case.0x48a29e.6
push ebx
push eax
mov eax, dword [esp + 0x36c]
push eax
push 0x202007d
jmp 0x48a34e
mov eax, dword [esi + 0x8ac]
push ebx
add eax, 0x558
push 9
push 0x110a
mov ecx, dword [eax + 0x1c]
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, ebx
je case.0x48a29e.6
mov ecx, dword [esi + 0x8ac]
push eax
add ecx, 0x558
call fcn.0051732f
mov edx, eax
shr edx, 0x1c
je case.0x48a29e.6
mov ecx, eax
dec edx
and ecx, 0xfffffff
dec ecx
cmp edx, 7
ja case.0x48a29e.6
jmp dword [edx*4 + 0x48a49c]
mov ecx, eax
and ecx, 0xffff
jbe 0x48a2cd
mov edx, dword [esp + 0x364]
dec ecx
shr eax, 0x10
and eax, 0xfff
push ecx
dec eax
push eax
push edx
push 0x2020019
jmp 0x48a34e
shr eax, 0x10
and eax, 0xfff
push ebx
dec eax
push eax
mov eax, dword [esp + 0x36c]
push eax
push 0x202001a
jmp 0x48a34e
cmp ecx, ebx
jl case.0x48a29e.6
push ebx
push ecx
mov ecx, dword [esp + 0x36c]
push ecx
push 0x202001b
jmp 0x48a34e
cmp ecx, ebx
jl case.0x48a29e.6
mov edx, dword [esp + 0x364]
push ebx
push ecx
push edx
push 0x202001c
jmp 0x48a34e
cmp ecx, ebx
jl case.0x48a29e.6
mov eax, dword [esp + 0x364]
push ebx
push ecx
push eax
push 0x202001d
jmp 0x48a34e
cmp ecx, ebx
jl case.0x48a29e.6
push ebx
push ecx
mov ecx, dword [esp + 0x36c]
push ecx
push 0x2020038
jmp 0x48a34e
cmp ecx, ebx
jl case.0x48a29e.6
mov edx, dword [esp + 0x364]
push ebx
push ecx
push edx
push 0x202007a
mov ecx, esi
call fcn.00458370
cmp dword [esp + 0x3c], 1
jne 0x48a374
cmp dword [esp + 0x34], ebx
jne 0x48a365
push ebx
jmp 0x48a36a
lea eax, [esp + 0x24]
push eax
mov ecx, 0x59a4e0
call fcn.004e7bf0
lea ecx, [esp + 0x24]
mov dword [esp + 0x358], 0xffffffff
mov dword [esp + 0x24], 0x54d7d0
call fcn.00473310
mov eax, 1
mov ecx, dword [esp + 0x350]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x34c
ret 0x10