Function at 0x40b6e0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4b78b0
mov eax, dword fs:[0]
push eax
sub esp, 0x40
push ebx
push esi
push edi
mov eax, dword [0x4e88d0]
xor eax, esp
push eax
lea eax, [esp + 0x50]
mov dword fs:[0], eax
mov dword [esp + 0x14], ecx
xor ebx, ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x3c], vtable.CBitmap.0
lea esi, [ecx + 0x1c]
lea edi, [esp + 0x3c]
mov dword [esp + 0x58], ebx
call fcn.0043b840
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
lea eax, [esp + 0x30]
push eax
lea ecx, [esp + 0x30]
mov byte [esp + 0x5c], 1
mov edx, dword [esp + 0x44]
push ecx
push edx
call fcn.00419090
mov edi, dword [esp + 0x3c]
mov ebx, dword [ebp + 8]
mov esi, dword [esp + 0x38]
add esp, 0xc
push edi
push 0x424d50
mov eax, ebx
call fcn.0045f150
add esp, 8
test edi, edi
je 0x40b77a
push edi
call fcn.004925e6
add esp, 4
mov dword [esp + 0x58], 0xffffffff
lea ecx, [esp + 0x3c]
mov dword [esp + 0x3c], vtable.CBitmap.0
call fcn.00402220
mov eax, dword [esp + 0x14]
mov esi, dword [eax + 0x2c]
mov eax, dword [ebx + 4]
add eax, 4
mov edi, ebx
call fcn.004338f0
mov eax, dword [ebx + 4]
add eax, dword [ebx]
mov dword [eax], 0x534d4c
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
add eax, 4
call fcn.004338f0
mov eax, dword [ebx + 4]
add eax, dword [ebx]
mov dword [eax], 4
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
add eax, 4
call fcn.004338f0
mov eax, dword [ebx + 4]
add eax, dword [ebx]
mov ecx, dword [esp + 0x14]
mov dword [eax], esi
add dword [ebx + 4], 4
mov edi, dword [ecx + 0x30]
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea esi, [eax + eax + 2]
push edi
push 0x434d54
mov eax, ebx
call fcn.0045f150
mov eax, dword [esp + 0x1c]
lea edx, [eax + 0xb0]
add esp, 8
add eax, 0x60
mov dword [esp + 0x30], 0
mov dword [esp + 0x28], edx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
cmp dword [eax], 0
je 0x40bca7
mov dword [esp + 0x48], 0
mov dword [esp + 0x44], vtable.CBitmap.0
lea edi, [esp + 0x44]
mov esi, eax
mov dword [esp + 0x58], 2
call fcn.0043b840
xor eax, eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x2c], eax
lea ecx, [esp + 0x2c]
push ecx
lea edx, [esp + 0x38]
mov byte [esp + 0x5c], 3
mov eax, dword [esp + 0x4c]
push edx
push eax
call fcn.00419090
mov al, byte [esp + 0x3c]
mov ecx, dword [ebx + 8]
add al, 0x31
mov byte [esp + 0x27], al
mov byte [esp + 0x2b], al
mov byte [esp + 0x2f], al
mov eax, dword [ebx + 4]
add eax, 4
add esp, 0xc
cmp ecx, eax
mov byte [esp + 0x18], 0x42
mov byte [esp + 0x19], 0x4d
mov byte [esp + 0x1a], 0x50
mov byte [esp + 0x1c], 0x53
mov byte [esp + 0x1d], 0x4d
mov byte [esp + 0x1e], 0x4c
mov byte [esp + 0x20], 0x43
mov byte [esp + 0x21], 0x4d
mov byte [esp + 0x22], 0x54
jge 0x40b90b
mov edi, ecx
test edi, edi
jne 0x40b8d2
mov edi, 0x10
cmp edi, eax
jge 0x40b8dc
add edi, edi
cmp edi, eax
jl 0x40b8d6
push edi
call fcn.00472669
mov esi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], edi
test eax, eax
je 0x40b909
mov ecx, dword [ebx + 4]
push ecx
push eax
push esi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], esi
mov eax, dword [ebx + 4]
add eax, dword [ebx]
mov edx, dword [esp + 0x18]
mov dword [eax], edx
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov edi, dword [ebx + 8]
add eax, 4
cmp edi, eax
jge 0x40b969
test edi, edi
jne 0x40b930
mov edi, 0x10
cmp edi, eax
jge 0x40b93a
add edi, edi
cmp edi, eax
jl 0x40b934
push edi
call fcn.00472669
mov esi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], edi
test eax, eax
je 0x40b967
mov ecx, dword [ebx + 4]
push ecx
push eax
push esi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], esi
mov eax, dword [ebx + 4]
add eax, dword [ebx]
mov esi, dword [esp + 0x34]
mov dword [eax], esi
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
test esi, esi
jbe 0x40b9eb
mov edi, dword [ebx + 8]
add eax, esi
cmp edi, eax
jge 0x40b9d4
test edi, edi
jne 0x40b991
mov edi, 0x10
cmp edi, eax
jge 0x40b99b
add edi, edi
cmp edi, eax
jl 0x40b995
push edi
call fcn.00472669
mov dword [esp + 0x38], eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], edi
test eax, eax
je 0x40b9ce
mov edx, dword [ebx + 4]
push edx
push eax
mov eax, dword [esp + 0x3c]
push eax
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov ecx, dword [esp + 0x34]
mov dword [ebx], ecx
mov eax, dword [ebx + 4]
mov edx, dword [esp + 0x2c]
add eax, dword [ebx]
push esi
push edx
push eax
call fcn.0049ad40
add esp, 0xc
add dword [ebx + 4], esi
mov eax, dword [esp + 0x28]
mov ecx, dword [eax - 0x10]
mov eax, dword [ebx + 4]
mov edi, dword [ebx + 8]
add eax, 4
cmp edi, eax
mov dword [esp + 0x38], ecx
jge 0x40ba45
test edi, edi
jne 0x40ba0c
mov edi, 0x10
cmp edi, eax
jge 0x40ba16
add edi, edi
cmp edi, eax
jl 0x40ba10
push edi
call fcn.00472669
mov esi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], edi
test eax, eax
je 0x40ba43
mov edx, dword [ebx + 4]
push edx
push eax
push esi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], esi
mov eax, dword [ebx + 4]
add eax, dword [ebx]
mov ecx, dword [esp + 0x1c]
mov dword [eax], ecx
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov edi, dword [ebx + 8]
add eax, 4
cmp edi, eax
jge 0x40baa5
test edi, edi
jne 0x40ba6a
mov edi, 0x10
cmp edi, eax
jge 0x40ba76
mov edi, edi
add edi, edi
cmp edi, eax
jl 0x40ba70
push edi
call fcn.00472669
mov esi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], edi
test eax, eax
je 0x40baa3
mov edx, dword [ebx + 4]
push edx
push eax
push esi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], esi
mov eax, dword [ebx + 4]
add eax, dword [ebx]
mov dword [eax], 4
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov edi, dword [ebx + 8]
add eax, 4
cmp edi, eax
jge 0x40bb05
test edi, edi
jne 0x40baca
mov edi, 0x10
cmp edi, eax
jge 0x40bad6
mov edi, edi
add edi, edi
cmp edi, eax
jl 0x40bad0
push edi
call fcn.00472669
mov esi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], edi
test eax, eax
je 0x40bb03
mov ecx, dword [ebx + 4]
push ecx
push eax
push esi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], esi
mov eax, dword [ebx + 4]
add eax, dword [ebx]
mov edx, dword [esp + 0x38]
mov dword [eax], edx
add dword [ebx + 4], 4
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
push eax
mov dword [esp + 0x40], eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov edi, dword [ebx + 8]
lea esi, [eax + eax + 2]
mov eax, dword [ebx + 4]
add eax, 4
cmp edi, eax
mov dword [esp + 0x38], esi
jge 0x40bb86
test edi, edi
jne 0x40bb43
mov edi, 0x10
cmp edi, eax
jge 0x40bb4d
add edi, edi
cmp edi, eax
jl 0x40bb47
push edi
call fcn.00472669
mov dword [esp + 0x38], eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], edi
test eax, eax
je 0x40bb80
mov ecx, dword [ebx + 4]
mov edx, dword [esp + 0x34]
push ecx
push eax
push edx
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov eax, dword [esp + 0x34]
mov dword [ebx], eax
mov eax, dword [ebx + 4]
add eax, dword [ebx]
mov ecx, dword [esp + 0x20]
mov dword [eax], ecx
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov edi, dword [ebx + 8]
add eax, 4
cmp edi, eax
jge 0x40bbe9
test edi, edi
jne 0x40bbab
mov edi, 0x10
cmp edi, eax
jge 0x40bbb6
nop
add edi, edi
cmp edi, eax
jl 0x40bbb0
push edi
call fcn.00472669
mov esi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], edi
test eax, eax
je 0x40bbe3
mov edx, dword [ebx + 4]
push edx
push eax
push esi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], esi
mov esi, dword [esp + 0x38]
mov eax, dword [ebx + 4]
add eax, dword [ebx]
mov dword [eax], esi
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
test esi, esi
jbe 0x40bc61
mov edi, dword [ebx + 8]
add eax, esi
cmp edi, eax
jge 0x40bc4a
test edi, edi
jne 0x40bc0d
mov edi, 0x10
cmp edi, eax
jge 0x40bc17
add edi, edi
cmp edi, eax
jl 0x40bc11
push edi
call fcn.00472669
mov esi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], edi
test eax, eax
je 0x40bc44
mov ecx, dword [ebx + 4]
push ecx
push eax
push esi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], esi
mov esi, dword [esp + 0x38]
mov eax, dword [ebx + 4]
mov edx, dword [esp + 0x3c]
add eax, dword [ebx]
push esi
push edx
push eax
call fcn.0049ad40
add esp, 0xc
add dword [ebx + 4], esi
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x40bc72
push eax
call fcn.004925e6
add esp, 4
mov dword [esp + 0x58], 0xffffffff
lea ecx, [esp + 0x44]
mov dword [esp + 0x44], vtable.CBitmap.0
call fcn.00402220
mov eax, dword [esp + 0x30]
add dword [esp + 0x24], 0x10
add dword [esp + 0x28], 4
inc eax
cmp eax, 4
mov dword [esp + 0x30], eax
jl 0x40b825
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x34]
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
mov dword [esp + 0x3c], ecx
jge 0x40bd05
test esi, esi
jne 0x40bcc8
mov esi, 0x10
cmp esi, eax
jge 0x40bcd6
lea esp, [esp]
add esi, esi
cmp esi, eax
jl 0x40bcd0
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40bd03
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
mov dword [ecx + edx], 0x544f5554
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40bd65
test esi, esi
jne 0x40bd2b
mov esi, 0x10
cmp esi, eax
jge 0x40bd36
nop
add esi, esi
cmp esi, eax
jl 0x40bd30
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40bd63
mov ecx, dword [ebx + 4]
push ecx
push eax
push edi
call fcn.0049ad40
mov edx, dword [ebx]
add esp, 0xc
push edx
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
mov dword [eax + ecx], 4
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40bdc5
test esi, esi
jne 0x40bd8b
mov esi, 0x10
cmp esi, eax
jge 0x40bd96
nop
add esi, esi
cmp esi, eax
jl 0x40bd90
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40bdc3
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov ecx, dword [ebx + 4]
add ecx, dword [ebx]
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x14]
mov dword [ecx], edx
add dword [ebx + 4], 4
mov eax, dword [eax + 0x38]
push eax
mov dword [esp + 0x40], eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, dword [ebx + 8]
lea edi, [eax + eax + 2]
mov eax, dword [ebx + 4]
add eax, 4
cmp esi, eax
mov dword [esp + 0x34], edi
jge 0x40be47
test esi, esi
jne 0x40be04
mov esi, 0x10
cmp esi, eax
jge 0x40be0e
add esi, esi
cmp esi, eax
jl 0x40be08
push esi
call fcn.00472669
mov dword [esp + 0x3c], eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40be41
mov ecx, dword [ebx + 4]
mov edx, dword [esp + 0x38]
push ecx
push eax
push edx
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov ecx, dword [esp + 0x38]
mov dword [ebx], ecx
mov edx, dword [ebx + 4]
mov eax, dword [ebx]
mov dword [edx + eax], 0x46444f
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40beaa
test esi, esi
jne 0x40be6d
mov esi, 0x10
cmp esi, eax
jge 0x40be77
add esi, esi
cmp esi, eax
jl 0x40be71
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40bea4
mov ecx, dword [ebx + 4]
push ecx
push eax
push edi
call fcn.0049ad40
mov edx, dword [ebx]
add esp, 0xc
push edx
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov edi, dword [esp + 0x34]
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
mov dword [eax + ecx], edi
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
test edi, edi
jbe 0x40bf23
mov esi, dword [ebx + 8]
add eax, edi
cmp esi, eax
jge 0x40bf0c
test esi, esi
jne 0x40becf
mov esi, 0x10
cmp esi, eax
jge 0x40bed9
add esi, esi
cmp esi, eax
jl 0x40bed3
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40bf06
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov edi, dword [esp + 0x34]
mov edx, dword [ebx + 4]
mov ecx, dword [esp + 0x3c]
add edx, dword [ebx]
push edi
push ecx
push edx
call fcn.0049ad40
add esp, 0xc
add dword [ebx + 4], edi
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x3c]
push eax
mov dword [esp + 0x40], eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, dword [ebx + 8]
lea edi, [eax + eax + 2]
mov eax, dword [ebx + 4]
add eax, 4
cmp esi, eax
mov dword [esp + 0x34], edi
jge 0x40bf96
test esi, esi
jne 0x40bf53
mov esi, 0x10
cmp esi, eax
jge 0x40bf5d
add esi, esi
cmp esi, eax
jl 0x40bf57
push esi
call fcn.00472669
mov dword [esp + 0x3c], eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40bf90
mov ecx, dword [ebx + 4]
mov edx, dword [esp + 0x38]
push ecx
push eax
push edx
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov ecx, dword [esp + 0x38]
mov dword [ebx], ecx
mov edx, dword [ebx + 4]
mov eax, dword [ebx]
mov dword [edx + eax], 0x54444f
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40bff9
test esi, esi
jne 0x40bfbc
mov esi, 0x10
cmp esi, eax
jge 0x40bfc6
add esi, esi
cmp esi, eax
jl 0x40bfc0
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40bff3
mov ecx, dword [ebx + 4]
push ecx
push eax
push edi
call fcn.0049ad40
mov edx, dword [ebx]
add esp, 0xc
push edx
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov edi, dword [esp + 0x34]
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
mov dword [eax + ecx], edi
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
test edi, edi
jbe 0x40c072
mov esi, dword [ebx + 8]
add eax, edi
cmp esi, eax
jge 0x40c05b
test esi, esi
jne 0x40c01e
mov esi, 0x10
cmp esi, eax
jge 0x40c028
add esi, esi
cmp esi, eax
jl 0x40c022
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c055
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov edi, dword [esp + 0x34]
mov edx, dword [ebx + 4]
mov ecx, dword [esp + 0x3c]
add edx, dword [ebx]
push edi
push ecx
push edx
call fcn.0049ad40
add esp, 0xc
add dword [ebx + 4], edi
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x40]
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
mov dword [esp + 0x3c], ecx
jge 0x40c0cc
test esi, esi
jne 0x40c093
mov esi, 0x10
cmp esi, eax
jge 0x40c09d
add esi, esi
cmp esi, eax
jl 0x40c097
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c0ca
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
mov dword [ecx + edx], 0x4946
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40c12b
test esi, esi
jne 0x40c0f2
mov esi, 0x10
cmp esi, eax
jge 0x40c0fc
add esi, esi
cmp esi, eax
jl 0x40c0f6
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c129
mov ecx, dword [ebx + 4]
push ecx
push eax
push edi
call fcn.0049ad40
mov edx, dword [ebx]
add esp, 0xc
push edx
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
mov dword [eax + ecx], 4
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40c18a
test esi, esi
jne 0x40c151
mov esi, 0x10
cmp esi, eax
jge 0x40c15b
add esi, esi
cmp esi, eax
jl 0x40c155
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c188
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov ecx, dword [ebx + 4]
add ecx, dword [ebx]
mov edx, dword [esp + 0x3c]
mov dword [ecx], edx
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov ecx, dword [esp + 0x14]
mov esi, dword [ebx + 8]
mov edx, dword [ecx + 0x44]
add eax, 4
cmp esi, eax
mov dword [esp + 0x3c], edx
jge 0x40c1f5
test esi, esi
jne 0x40c1ba
mov esi, 0x10
cmp esi, eax
jge 0x40c1c6
mov edi, edi
add esi, esi
cmp esi, eax
jl 0x40c1c0
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c1f3
mov ecx, dword [ebx + 4]
push ecx
push eax
push edi
call fcn.0049ad40
mov edx, dword [ebx]
add esp, 0xc
push edx
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
mov dword [eax + ecx], 0x41544d
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40c255
test esi, esi
jne 0x40c21b
mov esi, 0x10
cmp esi, eax
jge 0x40c226
nop
add esi, esi
cmp esi, eax
jl 0x40c220
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c253
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
mov dword [ecx + edx], 4
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40c2b5
test esi, esi
jne 0x40c27b
mov esi, 0x10
cmp esi, eax
jge 0x40c286
nop
add esi, esi
cmp esi, eax
jl 0x40c280
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c2b3
mov ecx, dword [ebx + 4]
push ecx
push eax
push edi
call fcn.0049ad40
mov edx, dword [ebx]
add esp, 0xc
push edx
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov eax, dword [ebx + 4]
add eax, dword [ebx]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x14]
mov dword [eax], ecx
add dword [ebx + 4], 4
mov eax, dword [edx + 0x48]
push eax
mov dword [esp + 0x40], eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, dword [ebx + 8]
lea edi, [eax + eax + 2]
mov eax, dword [ebx + 4]
add eax, 4
cmp esi, eax
mov dword [esp + 0x34], edi
jge 0x40c337
test esi, esi
jne 0x40c2f4
mov esi, 0x10
cmp esi, eax
jge 0x40c2fe
add esi, esi
cmp esi, eax
jl 0x40c2f8
push esi
call fcn.00472669
mov dword [esp + 0x3c], eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c331
mov ecx, dword [ebx + 4]
mov edx, dword [esp + 0x38]
push ecx
push eax
push edx
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov ecx, dword [esp + 0x38]
mov dword [ebx], ecx
mov edx, dword [ebx + 4]
mov eax, dword [ebx]
mov dword [edx + eax], 0x54554e54
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40c39a
test esi, esi
jne 0x40c35d
mov esi, 0x10
cmp esi, eax
jge 0x40c367
add esi, esi
cmp esi, eax
jl 0x40c361
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c394
mov ecx, dword [ebx + 4]
push ecx
push eax
push edi
call fcn.0049ad40
mov edx, dword [ebx]
add esp, 0xc
push edx
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov edi, dword [esp + 0x34]
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
mov dword [eax + ecx], edi
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
test edi, edi
jbe 0x40c413
mov esi, dword [ebx + 8]
add eax, edi
cmp esi, eax
jge 0x40c3fc
test esi, esi
jne 0x40c3bf
mov esi, 0x10
cmp esi, eax
jge 0x40c3c9
add esi, esi
cmp esi, eax
jl 0x40c3c3
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c3f6
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov edi, dword [esp + 0x34]
mov edx, dword [ebx + 4]
mov ecx, dword [esp + 0x3c]
add edx, dword [ebx]
push edi
push ecx
push edx
call fcn.0049ad40
add esp, 0xc
add dword [ebx + 4], edi
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x4c]
cmp dword [eax - 0xc], 0
mov dword [esp + 0x30], eax
je 0x40c572
mov ecx, eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, dword [ebx + 8]
lea edi, [eax + eax + 2]
mov eax, dword [ebx + 4]
add eax, 4
cmp esi, eax
mov dword [esp + 0x34], edi
jge 0x40c492
test esi, esi
jne 0x40c44f
mov esi, 0x10
cmp esi, eax
jge 0x40c459
add esi, esi
cmp esi, eax
jl 0x40c453
push esi
call fcn.00472669
mov dword [esp + 0x3c], eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c48c
mov edx, dword [ebx + 4]
push edx
push eax
mov eax, dword [esp + 0x40]
push eax
call fcn.0049ad40
mov ecx, dword [ebx]
add esp, 0xc
push ecx
call fcn.00472674
add esp, 4
mov edx, dword [esp + 0x38]
mov dword [ebx], edx
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
mov dword [eax + ecx], 0x57484552
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40c4f9
test esi, esi
jne 0x40c4b8
mov esi, 0x10
cmp esi, eax
jge 0x40c4c6
lea esp, [esp]
add esi, esi
cmp esi, eax
jl 0x40c4c0
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c4f3
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov edi, dword [esp + 0x34]
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
mov dword [ecx + edx], edi
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
test edi, edi
jbe 0x40c572
mov esi, dword [ebx + 8]
add eax, edi
cmp esi, eax
jge 0x40c55b
test esi, esi
jne 0x40c51e
mov esi, 0x10
cmp esi, eax
jge 0x40c528
add esi, esi
cmp esi, eax
jl 0x40c522
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c555
mov ecx, dword [ebx + 4]
push ecx
push eax
push edi
call fcn.0049ad40
mov edx, dword [ebx]
add esp, 0xc
push edx
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov edi, dword [esp + 0x34]
mov ecx, dword [ebx + 4]
mov eax, dword [esp + 0x30]
add ecx, dword [ebx]
push edi
push eax
push ecx
call fcn.0049ad40
add esp, 0xc
add dword [ebx + 4], edi
mov esi, dword [esp + 0x14]
add esi, 0x50
push esi
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x40ca34
mov edx, dword [esi]
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
mov dword [esp + 0x3c], edx
jge 0x40c5dd
test esi, esi
jne 0x40c5a4
mov esi, 0x10
cmp esi, eax
jge 0x40c5ae
add esi, esi
cmp esi, eax
jl 0x40c5a8
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c5db
mov ecx, dword [ebx + 4]
push ecx
push eax
push edi
call fcn.0049ad40
mov edx, dword [ebx]
add esp, 0xc
push edx
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
mov dword [eax + ecx], 0x52474e4c
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40c63c
test esi, esi
jne 0x40c603
mov esi, 0x10
cmp esi, eax
jge 0x40c60d
add esi, esi
cmp esi, eax
jl 0x40c607
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c63a
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
mov dword [ecx + edx], 4
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40c69b
test esi, esi
jne 0x40c662
mov esi, 0x10
cmp esi, eax
jge 0x40c66c
add esi, esi
cmp esi, eax
jl 0x40c666
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c699
mov ecx, dword [ebx + 4]
push ecx
push eax
push edi
call fcn.0049ad40
mov edx, dword [ebx]
add esp, 0xc
push edx
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov eax, dword [ebx + 4]
add eax, dword [ebx]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x14]
mov dword [eax], ecx
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
mov ecx, dword [edx + 0x54]
add eax, 4
cmp esi, eax
mov dword [esp + 0x3c], ecx
jge 0x40c705
test esi, esi
jne 0x40c6cb
mov esi, 0x10
cmp esi, eax
jge 0x40c6d6
nop
add esi, esi
cmp esi, eax
jl 0x40c6d0
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c703
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
mov dword [ecx + edx], 0x52474e54
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40c765
test esi, esi
jne 0x40c72b
mov esi, 0x10
cmp esi, eax
jge 0x40c736
nop
add esi, esi
cmp esi, eax
jl 0x40c730
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c763
mov ecx, dword [ebx + 4]
push ecx
push eax
push edi
call fcn.0049ad40
mov edx, dword [ebx]
add esp, 0xc
push edx
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
mov dword [eax + ecx], 4
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40c7c5
test esi, esi
jne 0x40c78b
mov esi, 0x10
cmp esi, eax
jge 0x40c796
nop
add esi, esi
cmp esi, eax
jl 0x40c790
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c7c3
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov ecx, dword [ebx + 4]
add ecx, dword [ebx]
mov edx, dword [esp + 0x3c]
mov dword [ecx], edx
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov ecx, dword [esp + 0x14]
mov esi, dword [ebx + 8]
mov edx, dword [ecx + 0x58]
add eax, 4
cmp esi, eax
mov dword [esp + 0x3c], edx
jge 0x40c835
test esi, esi
jne 0x40c7f5
mov esi, 0x10
cmp esi, eax
jge 0x40c806
lea esp, [esp]
add esi, esi
cmp esi, eax
jl 0x40c800
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c833
mov ecx, dword [ebx + 4]
push ecx
push eax
push edi
call fcn.0049ad40
mov edx, dword [ebx]
add esp, 0xc
push edx
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
mov dword [eax + ecx], 0x52474e52
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40c895
test esi, esi
jne 0x40c85b
mov esi, 0x10
cmp esi, eax
jge 0x40c866
nop
add esi, esi
cmp esi, eax
jl 0x40c860
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c893
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
mov dword [ecx + edx], 4
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40c8f5
test esi, esi
jne 0x40c8bb
mov esi, 0x10
cmp esi, eax
jge 0x40c8c6
nop
add esi, esi
cmp esi, eax
jl 0x40c8c0
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c8f3
mov ecx, dword [ebx + 4]
push ecx
push eax
push edi
call fcn.0049ad40
mov edx, dword [ebx]
add esp, 0xc
push edx
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov eax, dword [ebx + 4]
add eax, dword [ebx]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x14]
mov dword [eax], ecx
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
mov ecx, dword [edx + 0x5c]
add eax, 4
cmp esi, eax
mov dword [esp + 0x3c], ecx
jge 0x40c965
test esi, esi
jne 0x40c925
mov esi, 0x10
cmp esi, eax
jge 0x40c936
lea esp, [esp]
add esi, esi
cmp esi, eax
jl 0x40c930
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c963
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
mov dword [ecx + edx], 0x52474e42
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40c9c5
test esi, esi
jne 0x40c98b
mov esi, 0x10
cmp esi, eax
jge 0x40c996
nop
add esi, esi
cmp esi, eax
jl 0x40c990
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40c9c3
mov ecx, dword [ebx + 4]
push ecx
push eax
push edi
call fcn.0049ad40
mov edx, dword [ebx]
add esp, 0xc
push edx
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
mov dword [eax + ecx], 4
add dword [ebx + 4], 4
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
add eax, 4
cmp esi, eax
jge 0x40ca25
test esi, esi
jne 0x40c9eb
mov esi, 0x10
cmp esi, eax
jge 0x40c9f6
nop
add esi, esi
cmp esi, eax
jl 0x40c9f0
push esi
call fcn.00472669
mov edi, eax
mov eax, dword [ebx]
add esp, 4
mov dword [ebx + 8], esi
test eax, eax
je 0x40ca23
mov edx, dword [ebx + 4]
push edx
push eax
push edi
call fcn.0049ad40
mov eax, dword [ebx]
add esp, 0xc
push eax
call fcn.00472674
add esp, 4
mov dword [ebx], edi
mov ecx, dword [ebx + 4]
add ecx, dword [ebx]
mov edx, dword [esp + 0x3c]
mov dword [ecx], edx
add dword [ebx + 4], 4
mov ecx, dword [esp + 0x14]
push ebx
call fcn.00419b80
mov ecx, dword [esp + 0x50]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4