Function at 0x40481d
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x40
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x10], 0xed794908
lea eax, [ebx + 8]
mov dword [ebp - 0x38], eax
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatW]
mov eax, dword [ebp - 0x10]
cmp eax, 0x1ead2754
jle 0x404890
cmp eax, 0x621fa4b6
jle 0x4048f3
cmp eax, 0x6b5641c1
jle 0x404aa3
cmp eax, 0x7ba69f1a
jg 0x404b31
cmp eax, 0x6b5641c2
je 0x405017
cmp eax, 0x73be0562
je 0x404f95
cmp eax, 0x79e26cf6
jne 0x40483f
mov dword [ebp - 0x10], 0x7c87af69
jmp 0x40483f
cmp eax, 0xd847c5ee
jg 0x404936
cmp eax, 0xc501ad10
jle 0x404a51
cmp eax, 0xd0da6a1d
jg 0x404af6
cmp eax, 0xc501ad11
je 0x404e39
cmp eax, 0xc5229c8a
je 0x404f5e
cmp eax, 0xcd4d46e2
jne 0x40483f
xor eax, eax
inc eax
push eax
push 0x46c0fc
push eax
push dword [ebp - 0x28]
call fcn.0040a000
add esp, 0x10
mov dword [ebp - 0x10], 0x689a4ad4
jmp 0x40483f
cmp eax, 0x39d67c75
jg 0x404989
cmp eax, 0x29d22b82
jg 0x404b88
cmp eax, 0x1ead2755
je 0x404d10
cmp eax, 0x22ba95d3
je 0x404d6b
cmp eax, 0x24b83a11
jne 0x40483f
mov dword [ebp - 0x10], 0x29d22b83
jmp 0x40483f
cmp eax, 0xed794907
jg 0x4049ec
cmp eax, 0xdc5f160b
jg 0x404bda
cmp eax, 0xd88567f3
je 0x404cd1
cmp eax, 0xdbb9f85d
jne 0x405007
push dword [ebp - 0x30]
push dword [ebp - 0x1c]
call esi
push edi
push dword [ebp - 0x1c]
call esi
xor ecx, ecx
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov dword [eax], ecx
mov dword [ebp - 0x10], 0x41a6c29
jmp 0x40483f
cmp eax, 0x4b021d86
jle 0x404bb0
cmp eax, 0x4b021d87
je 0x404cf2
cmp eax, 0x4d5100d8
je 0x404d92
cmp eax, 0x51955ea2
jne 0x40483f
mov eax, dword [ebp - 0x18]
add eax, 0xffffff96
shr eax, 0xf
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x386b
shl eax, 9
add eax, 0xfffffc00
dec edx
mov dword [ebp - 0x18], eax
mov eax, 0xed794908
cmp ecx, edx
je 0x404fd6
mov eax, 0x2807d27
jmp 0x404fd6
cmp eax, 0x2807d26
jle 0x404c29
cmp eax, 0x2807d27
je 0x404d42
cmp eax, 0x41a6c29
je 0x404e01
cmp eax, 0x18ed0822
jne 0x40483f
push dword [ebp - 0x48]
push dword [ebp - 0x4c]
push dword [ebp - 0x1c]
push dword [ebp + 0x10]
call fcn.00424263
add esp, 0x10
push dword [ebp - 0x1c]
call fcn.0045809c
add esp, 4
push dword [ebp - 0x20]
call fcn.0045809c
add esp, 4
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x10], 0x361fecea
jmp 0x40483f
cmp eax, 0xa97a6b11
jle 0x404c6a
cmp eax, 0xa97a6b12
je 0x405053
cmp eax, 0xc107d07f
je 0x404eea
cmp eax, 0xc274d7c9
jne 0x40483f
push edi
push dword [ebp - 0x20]
call esi
push dword [ebp - 0x20]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
mov ecx, 0xd4b96963
test eax, eax
je 0x404f56
mov ecx, 0xf6037e87
jmp 0x404f56
cmp eax, 0x689a4ad3
jle 0x404c9b
cmp eax, 0x689a4ad4
je 0x404dc0
cmp eax, 0x68a4aa7f
je 0x404f2c
cmp eax, 0x68ec3f62
jne 0x40483f
mov eax, dword [ebp - 0x14]
shr eax, 1
add eax, 0xee
shr eax, 0xe
imul eax, eax, 0xec
add eax, 0xb1
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x5fbb806a
jmp 0x40483f
cmp eax, 0xd0da6a1e
je 0x404e7e
cmp eax, 0xd2aea994
je 0x404f81
cmp eax, 0xd4b96963
jne 0x40483f
mov eax, dword [ebp - 0x18]
shl eax, 7
add eax, 0xffffff36
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x361fecea
jmp 0x40483f
cmp eax, 0x7ba69f1b
je 0x404e99
cmp eax, 0x7c87af69
je 0x404fa1
cmp eax, 0x7d3fa7ee
jne 0x40483f
mov eax, dword [ebp - 0x18]
add eax, 0xc
imul ecx, eax, 0x178
imul eax, eax
imul edx, eax, 0x7221
dec edx
shr ecx, 3
add ecx, 0x1e
mov dword [ebp - 0x18], ecx
mov ecx, 0x2fa2526d
cmp eax, edx
je 0x404f56
mov ecx, 0xcd4d46e2
jmp 0x404f56
cmp eax, 0x29d22b83
je 0x404e0d
cmp eax, 0x3968f210
jne 0x404ff7
push eax
mov eax, esp
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], 0x51955ea2
jmp 0x40483f
cmp eax, 0x39d67c76
je 0x404d57
cmp eax, 0x3b6e01c6
jne 0x40483f
push dword [ebx + 4]
push dword [ebp - 0x20]
call esi
mov dword [ebp - 0x10], 0x3968f210
jmp 0x40483f
cmp eax, 0xdc5f160c
je 0x404fad
cmp eax, 0xe4d8bbab
je 0x404fde
cmp eax, 0xe8001e48
jne 0x40483f
mov eax, dword [ebp - 0x14]
mov ecx, 0xffffff7b
add eax, ecx
shr eax, 2
imul ecx, eax, 0xde
mov dword [ebp - 0x14], ecx
mov eax, 0xed794908
cmp ecx, 0x18
jb 0x404fd6
mov eax, 0x3b6e01c6
jmp 0x404fd6
cmp eax, 0xed794908
je 0x404def
cmp eax, 0xf6037e87
jne 0x40483f
push 2
push 0x104
call fcn.00457663
add esp, 8
mov dword [ebp - 0x1c], eax
push dword [ebx]
push dword [ebp - 0x1c]
call esi
push eax
mov eax, esp
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 0xd88567f3
jmp 0x40483f
cmp eax, 0x84c36c40
je 0x404ebc
cmp eax, 0x9dac1ab0
jne 0x40483f
imul eax, dword [ebp - 0x14], 0x340
add eax, 0xffff8a2c
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0xc501ad11
jmp 0x40483f
cmp eax, 0x621fa4b7
je 0x404efe
cmp eax, 0x6515b07d
jne 0x40483f
imul eax, dword [ebp - 0x14], 0x1f000000
add eax, 0x7ead1300
mov dword [ebp - 0x14], eax
call fcn.00401fb9
mov dword [ebp - 0x10], 0xed794908
jmp 0x40483f
mov eax, dword [ebp - 0x18]
mov ecx, 0x3ffff
and eax, ecx
add eax, 0xffffff16
shr eax, 0xa
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xc501ad11
jmp 0x40483f
push 2
push 0x104
call fcn.00457663
add esp, 8
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x10], 0xd0da6a1e
jmp 0x40483f
mov eax, dword [ebp - 0x14]
shr eax, 0xb
add eax, 0xbe
mov dword [ebp - 0x14], eax
push eax
push 0x3f1e
push 0x574a
push 0x5dbc
call fcn.00402a69
add esp, 0x10
mov dword [ebp - 0x10], 0xed794908
jmp 0x40483f
mov eax, dword [ebp - 0x28]
mov word [eax + 2], 0
mov dword [ebp - 0x10], 0xe4d8bbab
jmp 0x40483f
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x10], 0xc5229c8a
jmp 0x40483f
imul eax, dword [ebp - 0x14], 0x3940
add eax, 0x2b9980
mov dword [ebp - 0x14], eax
sub esp, 4
push eax
call fcn.00402124
add esp, 8
mov dword [ebp - 0x10], 0x2807d27
jmp 0x40483f
mov eax, dword [ebp - 0x30]
movzx ecx, word [0x46c102]
mov word [eax], cx
xor eax, eax
inc eax
push eax
push 0x46c104
push eax
push dword [ebp - 0x30]
call fcn.0040a000
add esp, 0x10
mov dword [ebp - 0x10], 0xdbb9f85d
jmp 0x40483f
mov eax, dword [ebp - 0x18]
add eax, 0xffffffbe
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x7c65
shr eax, 0x10
dec edx
mov dword [ebp - 0x18], eax
mov eax, 0x3968f210
cmp edx, ecx
je 0x404fd6
mov eax, 0xc107d07f
jmp 0x404fd6
push eax
mov eax, esp
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x10], 0x68a4aa7f
jmp 0x40483f
mov dword [ebp - 0x10], 0x24b83a11
jmp 0x40483f
push dword [ebp - 0x24]
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 0x20]
call fcn.0040f701
add esp, 0xc
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x10], 0x7ba69f1b
jmp 0x40483f
mov eax, dword [ebp - 0x2c]
mov word [eax + 2], 0
mov eax, dword [ebp - 0x2c]
movzx ecx, word [0x46c0fe]
mov word [eax], cx
xor eax, eax
inc eax
push eax
push 0x46c100
push eax
push dword [ebp - 0x2c]
call fcn.0040a000
add esp, 0x10
push dword [ebp - 0x2c]
push dword [ebp - 0x1c]
call esi
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x10], 0x39d67c76
jmp 0x40483f
mov eax, dword [ebp - 0x18]
and eax, 0xfffffff8
shl eax, 0x17
or eax, 0x31
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x3b6e01c6
jmp 0x40483f
mov eax, dword [ebp - 0x18]
shl eax, 0xc
and eax, 0x1ffff000
or eax, 0x29
imul eax, eax, 0xf9
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x73be0562
jmp 0x40483f
imul eax, dword [ebp - 0x14], 0x27c00
add eax, 0x431400
mov dword [ebp - 0x14], eax
push 0x4683
push eax
push 0x53d4
call fcn.00401df2
add esp, 0xc
mov dword [ebp - 0x10], 0xed794908
jmp 0x40483f
push dword [ebp - 0x28]
push dword [ebp - 0x20]
call esi
mov dword [ebp - 0x10], 0xc274d7c9
jmp 0x40483f
mov ecx, dword [ebp - 0x14]
mov eax, ecx
shr eax, 5
add eax, 0xc0
shr eax, 0xc
mov dword [ebp - 0x14], eax
mov eax, 0xe4d8bbab
cmp ecx, 0x139e800
jae 0x404fd6
mov eax, 0xed794908
jmp 0x404fd6
imul eax, dword [ebp - 0x18], 0x59
mov ecx, eax
shr ecx, 0xf
imul eax, eax
imul ecx, ecx, 0x2f
imul edx, eax, 0x679f
dec edx
add ecx, 0x24
mov dword [ebp - 0x18], ecx
mov ecx, 0xa97a6b12
cmp eax, edx
je 0x404f56
mov ecx, 0x79e26cf6
mov dword [ebp - 0x10], ecx
jmp 0x40483f
push dword [ebp - 0x40]
push dword [ebp - 0x1c]
call esi
push eax
mov eax, esp
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
add eax, 2
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x10], 0xdc5f160c
jmp 0x40483f
mov eax, dword [ebp - 0x44]
mov word [eax], 0
mov dword [ebp - 0x10], 0x4d5100d8
jmp 0x40483f
mov dword [ebp - 0x10], 0x18ed0822
jmp 0x40483f
mov dword [ebp - 0x10], 0x4b021d87
jmp 0x40483f
mov eax, dword [ebp - 0x18]
lea ecx, [eax - 0x10]
imul ecx, ecx
add eax, 0xa8
imul edx, ecx, 0x7361
shr eax, 0x13
dec edx
mov dword [ebp - 0x18], eax
mov eax, 0x9dac1ab0
cmp edx, ecx
je 0x404fd6
mov eax, 0xd2aea994
mov dword [ebp - 0x10], eax
jmp 0x40483f
mov eax, dword [ebp - 0x28]
movzx ecx, word [0x46c0fa]
mov word [eax], cx
mov dword [ebp - 0x10], 0x7d3fa7ee
jmp 0x40483f
cmp eax, 0x361fecea
jne 0x40483f
jmp 0x4050a5
cmp eax, 0xd847c5ef
jne 0x40483f
jmp 0x4050ad
mov eax, dword [ebp - 0x14]
add eax, 0xffffff92
shr eax, 0xb
imul esi, eax, 0x2da0
mov dword [ebp - 0x14], esi
push esi
push 0x4c45
push 0x3ed9
call fcn.00402e97
add esp, 0xc
mov eax, 0x1ead2755
cmp esi, 0x6c
jae 0x40504b
mov eax, 0x4b021d87
mov dword [ebp - 0x10], eax
jmp 0x404839
mov ebx, edi
mov esi, dword [ebp - 0x14]
add esi, 3
mov edi, esi
shr edi, 0xe
mov dword [ebp - 0x14], edi
push edi
push 0x41a6
push 0x5181
push 0x4d9d
call fcn.00402a69
add esp, 0x10
push 0x4a
push edi
call fcn.00401b43
add esp, 8
mov eax, 0xd847c5ef
cmp esi, 0x10000
jae 0x405098
mov eax, 0xed794908
mov dword [ebp - 0x10], eax
mov edi, ebx
mov ebx, dword [ebp + 8]
jmp 0x404839
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x14]
shr eax, 2
and eax, 0x3ffff800
add eax, 0x52000
shr eax, 5
mov dword [ebp - 0x14], eax
push eax
call fcn.00402891
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x88
mov ebx, dword [ebp + 0x10]
mov dword [ebp - 0x10], 0x4b83c4be
mov dword [ebp - 0x60], 0x305e4b83
test ebx, ebx
je 0x4050f1
mov dword [ebp - 0x60], 0xdd8d255b
mov eax, dword [ebp + 8]
add eax, 4
mov dword [ebp - 0x78], eax
mov edi, 2
mov eax, dword [ebp - 0x10]
cmp eax, 0xf6a1863a
jg 0x40516f
cmp eax, 0xbd0b1ef4
jg 0x405250
cmp eax, 0xa6330647
jle 0x405297
cmp eax, 0xaef5ad89
jg 0x4055b3
cmp eax, 0xabdffb08
jg 0x4056e0
cmp eax, 0xa9eebde4
jg 0x405aa3
cmp eax, 0xa6330648
je 0x405b10
cmp eax, 0xa6d14486
jne 0x4050ff
sub esp, 4
push dword [ebp + 0xc]
push dword [ebp - 0x34]
push dword [ebp + 8]
call fcn.0040481d
add esp, 0x10
mov dword [ebp - 0x10], 0xda2feaa5
jmp 0x4050ff
cmp eax, 0x346447af
jg 0x4051dd
cmp eax, 0x1020fb4b
jg 0x4052da
cmp eax, 0x63f1be
jg 0x405477
cmp eax, 0xfc8b8fd3
jg 0x40571a
cmp eax, 0xf6a1863b
je 0x405f42
cmp eax, 0xf8de3edb
je 0x405ca8
cmp eax, 0xfab35ff0
jne 0x4050ff
mov ecx, dword [ebp - 0x14]
mov eax, 0xffffff77
add ecx, eax
mov dword [ebp - 0x14], ecx
mov eax, 0xf3e46732
cmp ecx, 0x20
je 0x40648a
mov eax, 0xe69c079c
jmp 0x40648a
cmp eax, 0x509e31c0
jg 0x40533c
cmp eax, 0x436fb682
jg 0x4054e0
cmp eax, 0x3e90b4de
jg 0x40575b
cmp eax, 0x346447b0
je 0x405f81
cmp eax, 0x3ab90b57
je 0x4064fe
cmp eax, 0x3af15152
jne 0x4050ff
mov eax, dword [ebp - 0x14]
shr eax, 0xe
imul eax, eax, 0x24c000
shr eax, 3
add eax, 0xffffff5d
mov dword [ebp - 0x14], eax
push 0x55b4
push eax
call fcn.00401ca4
add esp, 8
mov dword [ebp - 0x10], 0xaef5ad8a
jmp 0x4050ff
cmp eax, 0xdd8d255a
jg 0x40538d
cmp eax, 0xc8f65d79
jg 0x4055f9
cmp eax, 0xc3dda6c0
jg 0x40594e
cmp eax, 0xbd0b1ef5
je 0x406337
cmp eax, 0xc019e5ed
je 0x4061ed
cmp eax, 0xc0a616a1
je 0x406099
jmp 0x4050ff
cmp eax, 0x96394c0e
jg 0x40540e
cmp eax, 0x905a4aec
jg 0x405679
cmp eax, 0x80033555
je 0x405b8f
cmp eax, 0x8629b4b1
je 0x405b22
cmp eax, 0x8f28c141
jne 0x4050ff
mov dword [ebp - 0x10], 0x5810ac8c
jmp 0x4050ff
cmp eax, 0x2321e2dc
jg 0x405525
cmp eax, 0x18a38840
jg 0x405797
cmp eax, 0x1020fb4c
je 0x405f9b
cmp eax, 0x1090d8d0
je 0x405cde
cmp eax, 0x13de09f2
jne 0x4050ff
mov ecx, dword [ebp - 0x14]
mov eax, 0xfffffff
and ecx, eax
add ecx, 0xffffff38
mov dword [ebp - 0x14], ecx
mov eax, 0xf3e46732
cmp ecx, 0x3a
jb 0x40648a
mov eax, 0xc6baff3b
jmp 0x40648a
cmp eax, 0x654c1d06
jg 0x40556e
cmp eax, 0x5f574f8c
jg 0x4057d0
cmp eax, 0x509e31c1
je 0x405fb9
cmp eax, 0x5810ac8c
je 0x405cfc
cmp eax, 0x5a50864b
jne 0x4050ff
mov eax, dword [ebp - 0x18]
shl eax, 3
and eax, 0xffff8
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x673858d5
jmp 0x4050ff
cmp eax, 0xef343a31
jg 0x40562a
cmp eax, 0xe69c079b
jg 0x4059a8
cmp eax, 0xdd8d255b
je 0x40634a
cmp eax, 0xde5084a3
je 0x406211
cmp eax, 0xe1e29d00
jne 0x4050ff
push eax
mov esi, esp
mov byte [esi + 2], 0
movzx eax, word [0x4793f7]
mov word [esi], ax
push edi
push 0x4793f9
push edi
push esi
call fcn.0040a130
add esp, 0x10
push esi
push dword [ebp - 0x20]
call fcn.00401b16
add esp, 8
mov dword [ebp - 0x6c], eax
push dword [ebp - 0x68]
call fcn.00458b30
add esp, 4
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x10], 0x4cb54edf
jmp 0x4050ff
cmp eax, 0x98812e07
jg 0x4056ac
cmp eax, 0x96394c0f
je 0x405bb8
cmp eax, 0x96bc26aa
je 0x405b34
cmp eax, 0x97c27a99
jne 0x4050ff
mov eax, dword [ebp - 0x18]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*2]
add ecx, 0x6bd
mov eax, ecx
shr eax, 0x11
imul ecx, ecx
imul edx, ecx, 0x1d4f
dec edx
add eax, 0xffffff16
mov dword [ebp - 0x18], eax
mov eax, 0xf3e46732
cmp ecx, edx
je 0x40648a
mov eax, 0x6d85cc41
jmp 0x40648a
cmp eax, 0x7274663
jg 0x405808
cmp eax, 0x63f1bf
je 0x406004
cmp eax, 0x33db623
je 0x405d16
cmp eax, 0x70749f9
jne 0x4050ff
mov eax, dword [ebp - 0x18]
shr eax, 1
and eax, 0x7ffffff
mov ecx, eax
imul ecx, eax
shr eax, 0xd
imul edx, ecx, 0x69
dec edx
imul eax, eax, 0x59
add eax, 0xffffe3d7
mov dword [ebp - 0x18], eax
mov eax, 0x3e90b4df
cmp ecx, edx
je 0x4054d2
mov eax, 0x950215ef
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x64], eax
jmp 0x4050ff
cmp eax, 0x48803aaf
jg 0x405846
cmp eax, 0x436fb683
je 0x40602f
cmp eax, 0x43b7ad77
je 0x405d46
cmp eax, 0x46dada9a
jne 0x4050ff
mov eax, dword [ebp - 0x28]
movzx ecx, word [0x4793ef]
mov word [eax], cx
mov dword [ebp - 0x10], 0xed512fb9
jmp 0x4050ff
cmp eax, 0x27bd27f1
jg 0x4058a5
cmp eax, 0x2321e2dd
je 0x40604f
cmp eax, 0x256834ae
je 0x405d63
cmp eax, 0x26dcedbd
jne 0x4050ff
mov eax, dword [ebp - 0x18]
shl eax, 9
add eax, 0xffffff33
shr eax, 8
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xc6baff3b
jmp 0x4050ff
cmp eax, 0x6d85cc40
jg 0x4058e7
cmp eax, 0x654c1d07
je 0x406072
cmp eax, 0x673858d5
je 0x405dc0
cmp eax, 0x6a7ac641
jne 0x4050ff
imul eax, dword [ebp - 0x18], 0x2c6e00
or eax, 0x2b
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x5f574f8d
jmp 0x4050ff
cmp eax, 0xbb4c7ee7
jg 0x4059ec
cmp eax, 0xaef5ad8a
je 0x406356
cmp eax, 0xb2274aaa
je 0x4060a5
cmp eax, 0xb7c2bc2c
jne 0x4050ff
mov eax, dword [ebp - 0x18]
shl eax, 0x15
or eax, 0x12c000
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x1020fb4c
jmp 0x4050ff
cmp eax, 0xd7373b6c
jg 0x405a28
cmp eax, 0xc8f65d7a
je 0x40639a
cmp eax, 0xceb50b65
je 0x40621d
cmp eax, 0xd14405e4
je 0x405bac
jmp 0x4050ff
cmp eax, 0xf3340f5d
jg 0x405a6a
cmp eax, 0xef343a32
je 0x4063dd
cmp eax, 0xf1377c18
je 0x406259
cmp eax, 0xf14d14bf
jne 0x4050ff
push dword [ebp - 0x90]
push dword [ebp - 0x1c]
call dword [sym.imp.KERNEL32.dll_lstrcatW]
sub esp, 0x18
mov eax, esp
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x10], 0xb11bdec
jmp 0x4050ff
cmp eax, 0x905a4aed
je 0x405beb
cmp eax, 0x920224c1
je 0x405b4a
cmp eax, 0x950215ef
jne 0x4050ff
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x10], 0x7274664
jmp 0x4050ff
cmp eax, 0x98812e08
je 0x405c0c
cmp eax, 0x99f90b76
je 0x405b74
cmp eax, 0x9bc6e013
jne 0x4050ff
mov dword [ebp - 0x18], 0x3bc0ab00
mov dword [ebp - 0x10], 0x18a38841
jmp 0x4050ff
cmp eax, 0xabdffb09
je 0x405c71
cmp eax, 0xad6cf5ef
je 0x405c44
cmp eax, 0xae6f0e65
jne 0x4050ff
imul eax, dword [ebp - 0x18], 0x8c51e0
shr eax, 7
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x509e31c1
jmp 0x4050ff
cmp eax, 0xfc8b8fd4
je 0x4060ce
cmp eax, 0xfd12aba5
je 0x405e0c
cmp eax, 0xfe45a8c8
jne 0x4050ff
push 4
push 0x46c114
push 7
push dword [ebp - 0x34]
call fcn.0040a250
add esp, 0x10
mov dword [ebp - 0x10], 0xa6d14486
jmp 0x4050ff
cmp eax, 0x3e90b4df
je 0x406111
cmp eax, 0x3fdf6b0e
je 0x405e27
cmp eax, 0x418639a2
jne 0x4050ff
imul eax, dword [ebp - 0x18], 0x1630000
add eax, 0x2570ff7a
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xef343a32
jmp 0x4050ff
cmp eax, 0x18a38841
je 0x40612a
cmp eax, 0x198acedd
je 0x405e45
cmp eax, 0x1e9a2f9d
jne 0x4050ff
movzx eax, word [ebp - 0x12]
add eax, 0x1f5
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0xaef5ad8a
jmp 0x4050ff
cmp eax, 0x5f574f8d
je 0x406141
cmp eax, 0x62880e63
je 0x405e78
cmp eax, 0x64696e2b
jne 0x4050ff
mov eax, dword [ebp - 0x88]
mov word [eax], 0
mov dword [ebp - 0x10], 0xb7c2bc2c
jmp 0x4050ff
cmp eax, 0x7274664
je 0x4060c2
cmp eax, 0xb11bdec
je 0x405eba
cmp eax, 0xe480475
jne 0x4050ff
mov eax, dword [ebp - 0x8c]
push dword [eax]
push dword [ebp - 0x5c]
call dword [sym.imp.KERNEL32.dll_lstrcatW]
mov dword [ebp - 0x10], 0x3fdf6b0e
jmp 0x4050ff
cmp eax, 0x4b83c4bd
jle 0x405ae5
cmp eax, 0x4b83c4be
je 0x405b08
cmp eax, 0x4cb54edf
jne 0x4050ff
mov eax, dword [ebp - 0x18]
shr eax, 5
lea ecx, [eax - 0xd4]
add eax, 0xffffff92
imul ecx, ecx
shr eax, 5
imul edx, ecx, 0x1f03
add eax, 0xffffff28
dec edx
shr eax, 3
mov dword [ebp - 0x18], eax
mov eax, 0xd75ebf7c
cmp ecx, edx
je 0x40648a
mov eax, 0x8f28c141
jmp 0x40648a
cmp eax, 0x27bd27f2
je 0x406156
cmp eax, 0x29c13322
je 0x405ede
cmp eax, 0x305e4b83
jne 0x4050ff
push eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
add eax, 0xe
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x10], 0xf6a1863b
jmp 0x4050ff
cmp eax, 0x6d85cc41
je 0x406170
cmp eax, 0x7dbd80f1
je 0x405f1c
cmp eax, 0x7f0867af
jne 0x4050ff
imul esi, dword [ebp - 0x14], 0x34
add esi, 0xfffff778
mov dword [ebp - 0x14], esi
push esi
call fcn.004022ed
add esp, 4
push 0x4fee
push esi
push 0x3bf9
push 0x1f02
call fcn.00404232
add esp, 0x10
mov eax, 0x305e4b83
cmp esi, 0x69
jl 0x40648a
mov eax, 0x4a0a9e45
jmp 0x40648a
cmp eax, 0xc3dda6c1
je 0x4063e9
cmp eax, 0xc67bb624
je 0x40627a
cmp eax, 0xc6baff3b
jne 0x4050ff
push 8
push 0x46c134
push 0xa
push dword [ebp - 0x38]
call fcn.0040a250
add esp, 0xc
push dword [ebp + 0xc]
push dword [ebp - 0x38]
push dword [ebp + 8]
call fcn.0040481d
add esp, 0x10
sub esp, 0x30
mov eax, esp
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x10], 0x6a7ac641
jmp 0x4050ff
cmp eax, 0xe69c079c
je 0x4064b2
cmp eax, 0xecdabce4
je 0x406286
cmp eax, 0xed512fb9
jne 0x4050ff
mov eax, dword [ebp - 0x18]
shr eax, 0xd
imul eax, eax, 0x7800
add eax, 0xfffef75c
shr eax, 0xe
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x98812e08
jmp 0x4050ff
cmp eax, 0xbb4c7ee8
je 0x406419
cmp eax, 0xbc92df44
je 0x40617c
cmp eax, 0xbca84cf2
jne 0x4050ff
mov eax, dword [ebp - 0x18]
lea eax, [eax + eax*8]
shl eax, 0x18
add eax, 0xffffff97
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xa6330648
jmp 0x4050ff
cmp eax, 0xd7373b6d
je 0x406434
cmp eax, 0xd75ebf7c
je 0x4062ad
cmp eax, 0xda2feaa5
jne 0x4050ff
push eax
sub esp, 0x14
mov eax, esp
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
add eax, 0x14
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x10], 0x64696e2b
jmp 0x4050ff
cmp eax, 0xf3340f5e
je 0x40645f
cmp eax, 0xf3e46732
je 0x4062d8
cmp eax, 0xf63e481b
jne 0x4050ff
mov eax, dword [ebp - 0x50]
add eax, 0x14
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x10], 0xa9eebde5
jmp 0x4050ff
cmp eax, 0xa9f95e5b
jne 0x406492
mov eax, dword [ebp - 0x18]
mov ecx, 0xed
add eax, ecx
imul ecx, eax, 0x4623
imul eax, eax
imul edx, eax, 0x7cc5
dec edx
shr ecx, 0xa
mov dword [ebp - 0x18], ecx
mov ecx, 0x46dada9a
cmp eax, edx
je 0x406392
mov ecx, 0x305e4b83
jmp 0x406392
cmp eax, 0x48803ab0
jne 0x4064a2
mov eax, dword [ebp - 0x18]
and eax, 0xfffffff0
shl eax, 0xa
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xe480475
jmp 0x4050ff
mov eax, dword [ebp - 0x60]
jmp 0x40648a
mov eax, dword [ebp - 0x7c]
mov byte [eax], 0
mov dword [ebp - 0x10], 0x43b7ad77
jmp 0x4050ff
push eax
mov eax, esp
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 0xfc8b8fd4
jmp 0x4050ff
mov eax, dword [ebp - 0x14]
shl eax, 0xa
add eax, 0xffffff7a
shr eax, 2
mov dword [ebp - 0x14], eax
jmp 0x406099
mov ecx, dword [ebp - 0x14]
shl ecx, 0xb
add ecx, 0xf3000
mov dword [ebp - 0x14], ecx
mov eax, 0x905a4aed
cmp ecx, 0xf8
jge 0x40648a
mov eax, 0x9c5fbecc
jmp 0x40648a
imul eax, dword [ebp - 0x18], 0xec0000
add eax, 0xf2072000
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x3e90b4df
jmp 0x4050ff
imul eax, dword [ebp - 0x14], 0x39cc
add eax, 0xfff35b60
mov dword [ebp - 0x14], eax
push 0x2a83
push eax
call fcn.00401ba7
add esp, 8
mov dword [ebp - 0x10], 0xe1e29d00
jmp 0x4050ff
imul esi, dword [ebp - 0x14], 0xb20dc70
add esi, 0x4f
mov dword [ebp - 0x14], esi
push esi
push 0x4124
call fcn.00401ca4
add esp, 8
mov eax, 0xc019e5ed
cmp esi, 0x60
jge 0x40648a
mov eax, 0xfab35ff0
jmp 0x40648a
imul ecx, dword [ebp - 0x14], 0x1ec2a00
mov dword [ebp - 0x14], ecx
mov eax, 0xfe45a8c8
test ecx, ecx
je 0x40648a
mov eax, 0x1020fb4c
jmp 0x40648a
push edi
push 0x4793f1
push edi
push dword [ebp - 0x28]
call fcn.0040a130
add esp, 0x10
push edi
push dword [ebp - 0x28]
push dword [ebp - 0x20]
call fcn.00401d97
add esp, 0xc
mov ecx, 0xa9f95e5b
test eax, eax
je 0x406392
mov ecx, 0x33db623
jmp 0x406392
mov eax, dword [ebp - 0x14]
mov ecx, 0xa4
add eax, ecx
shr eax, 8
add eax, 0xe0
mov dword [ebp - 0x14], eax
push 0x5ceb
push eax
push 0x1c5c
call fcn.00402a0f
add esp, 0xc
jmp 0x406099
mov eax, dword [ebp - 0x14]
lea eax, [eax + eax*2]
lea eax, [eax*4 + 0x5f]
shr eax, 3
imul ecx, eax, 0xa3
add ecx, 0x96
mov dword [ebp - 0x14], ecx
mov eax, 0x64696e2b
cmp ecx, 0x65
jae 0x40648a
mov eax, 0x5f574f8d
jmp 0x40648a
mov eax, dword [ebp - 0x18]
mov ecx, eax
shl ecx, 5
add eax, ecx
add eax, 0xb6
mov ecx, eax
imul ecx, eax
shr eax, 7
imul edx, ecx, 0x1639
dec edx
add eax, 3
mov dword [ebp - 0x18], eax
mov eax, 0xf3340f5e
cmp ecx, edx
jne 0x405e6e
jmp 0x40648a
push 2
push 0x104
call fcn.00457663
add esp, 8
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 0x97c27a99
jmp 0x4050ff
push dword [ebp - 0x6c]
call fcn.00458b30
add esp, 4
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x10], 0xceb50b65
jmp 0x4050ff
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff2
imul ecx, eax, 0x77
imul eax, eax
imul edx, eax, 0x4d
dec edx
add ecx, 0xffffff18
mov dword [ebp - 0x18], ecx
mov ecx, 0x46dada9a
cmp eax, edx
je 0x406392
mov ecx, 0xde5084a3
jmp 0x406392
mov eax, dword [ebp - 0x18]
lea eax, [eax + eax*2]
shl eax, 0xc
add eax, 0xbb019
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xaef5ad8a
jmp 0x4050ff
mov edi, dword [ebp + 8]
push dword [edi]
push dword [ebp - 0x1c]
mov edi, ebx
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcatW]
call ebx
push eax
mov esi, esp
mov word [esi + 2], 0
movzx eax, word [0x46c22c]
mov word [esi], ax
xor eax, eax
inc eax
push eax
push 0x46c22e
push eax
push esi
call fcn.0040a250
add esp, 0x10
push esi
push dword [ebp - 0x1c]
call ebx
mov ebx, edi
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov edi, 2
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x10], 0xf14d14bf
jmp 0x4050ff
push 5
push 0x46c1de
push 0xf
push dword [ebp - 0x48]
call fcn.0040a250
add esp, 0xc
push dword [ebp + 0xc]
push dword [ebp - 0x48]
push dword [ebp + 8]
call fcn.0040481d
add esp, 0x10
push 2
push 0x104
call fcn.00457663
add esp, 8
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x10], 0x48803ab0
jmp 0x4050ff
push dword [ebp - 0x74]
push ebx
call fcn.00401e5c
add esp, 8
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x10], 0x418639a2
jmp 0x4050ff
push eax
sub esp, 0x2c
mov eax, esp
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
mov word [eax + 0x2c], 0
mov dword [ebp - 0x10], 0x29c13322
jmp 0x4050ff
mov ecx, dword [ebp - 0x18]
mov eax, 0xffffff64
add ecx, eax
mov eax, ecx
shl eax, 0xf
imul ecx, ecx
imul edx, ecx, 0x2861
dec edx
mov dword [ebp - 0x18], eax
mov eax, 0x6c1284f3
cmp edx, ecx
je 0x40648a
mov eax, 0x305e4b83
jmp 0x40648a
mov esi, dword [ebp - 0x14]
shl esi, 6
add esi, 0xfffff780
mov dword [ebp - 0x14], esi
push esi
push 0xd72
push 0x4d9b
push 0xe0a
call fcn.0040302a
add esp, 0x10
mov eax, 0xfd12aba5
cmp esi, 0xf7
jae 0x40648a
mov eax, 0x3af15152
jmp 0x40648a
imul eax, dword [ebp - 0x18], 0x1b0
add eax, 0xffff417d
shr eax, 8
imul eax, eax, 0xce
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xf63e481b
jmp 0x4050ff
push 0x2c
push 0x46c1f0
push dword [ebp - 0x4c]
call fcn.00447850
add esp, 0xc
push 8
push 0x46c21c
push 0x16
push dword [ebp - 0x4c]
call fcn.0040a250
add esp, 0x10
push dword [ebp - 0x4c]
push dword [ebp - 0x5c]
call dword [sym.imp.KERNEL32.dll_lstrcatW]
mov dword [ebp - 0x10], 0x1090d8d0
jmp 0x4050ff
push ebx
call fcn.00401e4d
add esp, 4
mov ecx, 0x305e4b83
test eax, eax
je 0x405f33
mov ecx, 0x950215ef
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x64], 0
jmp 0x4050ff
mov eax, dword [ebp - 0x84]
mov word [eax], 0
mov eax, dword [ebp - 0x34]
movzx ecx, word [0x46c112]
mov word [eax + 0xc], cx
mov ecx, dword [0x46c10e]
mov dword [eax + 8], ecx
mov ecx, dword [0x46c10a]
mov dword [eax + 4], ecx
mov ecx, dword [0x46c106]
mov dword [eax], ecx
mov dword [ebp - 0x10], 0xfe45a8c8
jmp 0x4050ff
xor eax, eax
mov dword [ebp - 0x14], eax
push eax
call fcn.004022ed
add esp, 4
mov dword [ebp - 0x10], 0xc19abda5
jmp 0x4050ff
push 0x14
push 0x46c120
push dword [ebp - 0x38]
call fcn.00447850
add esp, 0xc
mov dword [ebp - 0x10], 0x26dcedbd
jmp 0x4050ff
push 0x2c
push 0x46c150
push dword [ebp - 0x3c]
call fcn.00447850
add esp, 0xc
push 5
push 0x46c17c
push 0x16
push dword [ebp - 0x3c]
call fcn.0040a250
add esp, 0xc
push dword [ebp + 0xc]
push dword [ebp - 0x3c]
push dword [ebp + 8]
call fcn.0040481d
add esp, 0x10
sub esp, 0x10
mov eax, esp
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x10], 0xd7373b6d
jmp 0x4050ff
mov esi, dword [ebp - 0x14]
inc esi
mov dword [ebp - 0x14], esi
push esi
call fcn.00402897
add esp, 4
mov eax, 0xf8e1f725
cmp esi, 0x8c
je 0x40648a
mov eax, 0x80033555
jmp 0x40648a
mov eax, dword [ebp - 0x54]
add eax, eax
add eax, 2
push eax
call fcn.00458444
add esp, 4
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x10], 0x9bc6e013
jmp 0x4050ff
mov esi, dword [ebp - 0x14]
shl esi, 7
add esi, 0x58ec
mov dword [ebp - 0x14], esi
push esi
call fcn.0040295d
add esp, 4
push esi
call fcn.00402b26
add esp, 4
jmp 0x406099
imul esi, dword [ebp - 0x14], 0x608000
add esi, 0x40757da0
mov dword [ebp - 0x14], esi
push esi
call fcn.00401883
add esp, 4
push esi
push 0x3143
call fcn.00401b43
add esp, 8
mov dword [ebp - 0x10], 0x7dbd80f1
jmp 0x4050ff
mov eax, dword [ebp - 0x14]
mov ecx, 0xffffff6c
add eax, ecx
shr eax, 3
and eax, 0x1ffff800
imul eax, eax, 0x3a
or eax, 0xef
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0xfd12aba5
jmp 0x4050ff
mov eax, dword [ebp - 0x2c]
mov byte [eax + 2], 0
mov eax, dword [ebp - 0x2c]
movzx ecx, word [0x4793f3]
mov word [eax], cx
push edi
push 0x4793f5
push edi
push dword [ebp - 0x2c]
call fcn.0040a130
add esp, 0x10
push dword [ebp - 0x2c]
push dword [ebp - 0x20]
call fcn.00401b16
add esp, 8
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x10], 0x27bd27f2
jmp 0x4050ff
push eax
mov eax, esp
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov byte [eax + 2], 0
mov dword [ebp - 0x10], 0xbd0b1ef5
jmp 0x4050ff
mov eax, dword [ebp - 0x58]
add eax, eax
add eax, 2
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x10], 0x3ab90b57
jmp 0x4050ff
mov eax, dword [ebp - 0x3c]
mov word [eax + 0x2c], 0
mov dword [ebp - 0x10], 0xae6f0e65
jmp 0x4050ff
mov eax, dword [ebp - 0x18]
shl eax, 9
or eax, 0x88
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xd14405e4
jmp 0x4050ff
mov dword [ebp - 0x10], 0x256834ae
jmp 0x4050ff
mov eax, dword [ebp - 0x40]
xor esi, esi
mov word [eax + 0xe], si
mov eax, dword [ebp - 0x40]
movzx ecx, word [0x46c192]
mov word [eax + 0xc], cx
mov ecx, dword [0x46c18e]
mov dword [eax + 8], ecx
mov ecx, dword [0x46c18a]
mov dword [eax + 4], ecx
mov ecx, dword [0x46c186]
mov dword [eax], ecx
push 4
push 0x46c194
push 7
push dword [ebp - 0x40]
call fcn.0040a250
add esp, 0xc
push dword [ebp + 0xc]
push dword [ebp - 0x40]
push dword [ebp + 8]
call fcn.0040481d
add esp, 0x10
sub esp, 0x14
mov eax, esp
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov word [eax + 0x10], si
mov dword [ebp - 0x10], 0xf3e46732
jmp 0x4050ff
mov ecx, dword [ebp - 0x14]
shr ecx, 9
add ecx, 0xffffffc0
mov dword [ebp - 0x14], ecx
mov eax, 0xa6d14486
cmp ecx, 0x79
je 0x40648a
mov eax, 0xabdffb09
jmp 0x40648a
mov dword [ebp - 0x10], 0x8629b4b1
jmp 0x4050ff
mov ecx, dword [ebp - 0x18]
shr ecx, 0xa
lea eax, [ecx + 0xaa]
imul eax, eax
imul edx, eax, 0x631d
lea ecx, [ecx + ecx*4]
shl ecx, 6
dec edx
add ecx, 0x55a
mov dword [ebp - 0x18], ecx
mov ecx, 0xfd12aba5
cmp eax, edx
je 0x406392
mov ecx, 0xc67bb624
jmp 0x406392
mov ecx, dword [ebp - 0x14]
add ecx, 0xffffffd3
mov dword [ebp - 0x14], ecx
mov eax, 0xa6330648
cmp ecx, 0x68
jge 0x40648a
mov eax, 0xfd12aba5
jmp 0x40648a
mov dword [ebp - 0x10], 0x436fb683
jmp 0x4050ff
mov eax, dword [ebp - 0x48]
mov word [eax + 0x1e], 0
push 0x1e
push 0x46c1c0
push dword [ebp - 0x48]
call fcn.00447850
add esp, 0xc
mov dword [ebp - 0x10], 0x5a50864b
jmp 0x4050ff
imul ecx, dword [ebp - 0x14], 0x2b00
and ecx, 0xffffe000
or ecx, 0x31
mov dword [ebp - 0x14], ecx
mov eax, 0xaef5ad8a
cmp ecx, 0x44
jb 0x40648a
mov eax, 0xbb4c7ee8
jmp 0x40648a
mov eax, dword [ebp - 0x44]
mov ecx, dword [0x46c1a8]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x46c1a4]
mov dword [eax + 8], ecx
mov ecx, dword [0x46c1a0]
mov dword [eax + 4], ecx
mov ecx, dword [0x46c19c]
mov dword [eax], ecx
push 7
push 0x46c1ac
push 8
push dword [ebp - 0x44]
call fcn.0040a250
add esp, 0xc
push dword [ebp + 0xc]
push dword [ebp - 0x44]
push dword [ebp + 8]
call fcn.0040481d
add esp, 0x10
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x10], 0xecdabce4
jmp 0x4050ff
mov dword [ebp - 0x18], 0x3b80048
mov dword [ebp - 0x10], 0x46dada9a
jmp 0x4050ff
mov dword [ebp - 0x10], 0xc0a616a1
jmp 0x4050ff
mov eax, dword [ebp - 0x24]
movzx ecx, word [str.2WI]
mov word [eax], cx
push edi
push 0x4793ed
push edi
push dword [ebp - 0x24]
call fcn.0040a130
add esp, 0x10
push edi
push dword [ebp - 0x24]
push dword [ebp - 0x20]
call fcn.00401d97
add esp, 0xc
mov ecx, 0x198acedd
test eax, eax
je 0x406392
mov ecx, 0x99f90b76
mov dword [ebp - 0x10], ecx
jmp 0x4050ff
imul esi, dword [ebp - 0x14], 0x76b8
shr esi, 8
add esi, 0x67
mov dword [ebp - 0x14], esi
push 0xb6a
push 0xfd2
push 0x5611
push esi
call fcn.0040302a
add esp, 0x10
mov eax, 0x7dbd80f1
cmp esi, 0xe1
je 0x40648a
mov eax, 0xb2274aaa
jmp 0x40648a
mov dword [ebp - 0x10], 0xbb4c7ee8
jmp 0x4050ff
mov esi, dword [ebp - 0x14]
shl esi, 0xc
or esi, 0x28
mov dword [ebp - 0x14], esi
push 0xd76
push esi
push 0x3d17
call fcn.004028bf
add esp, 0xc
mov eax, 0x96bc26aa
cmp esi, 0x79
jl 0x40648a
mov eax, 0x1e9a2f9d
jmp 0x40648a
push eax
mov eax, esp
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
add eax, 2
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x10], 0xbca84cf2
jmp 0x4050ff
imul eax, dword [ebp - 0x18], 0x71
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x847
add eax, 6
dec edx
and eax, 0xfffff800
mov dword [ebp - 0x18], eax
mov eax, 0xc6baff3b
cmp edx, ecx
je 0x40648a
mov eax, 0xbc92df44
jmp 0x40648a
imul esi, dword [ebp - 0x14], 0x50c2200
add esi, 0xb3af6800
mov dword [ebp - 0x14], esi
push esi
call fcn.00403631
add esp, 4
mov eax, 0x63f1bf
cmp esi, 0xf8
jl 0x40648a
mov eax, 0x3ab90b57
mov dword [ebp - 0x10], eax
jmp 0x4050ff
cmp eax, 0xa9eebde5
je 0x40658e
jmp 0x4050ff
cmp eax, 0x4a0a9e45
jne 0x4050ff
jmp 0x406611
mov esi, dword [ebp - 0x14]
shl esi, 8
mov ebx, 0x509e31c1
add esi, 0x9200
mov dword [ebp - 0x14], esi
je 0x4064cd
mov ebx, 0x5f574f8d
push 0x2d03
push esi
push 0x55b6
push 0x4a58
call fcn.00409da0
add esp, 0x10
push esi
push 0x5cfb
call fcn.00403613
add esp, 8
mov dword [ebp - 0x10], ebx
mov ebx, dword [ebp + 0x10]
jmp 0x4050fa
push dword [ebp - 0x80]
call fcn.00458444
add esp, 4
mov esi, eax
push dword [ebp - 0x54]
push dword [ebp - 0x68]
push dword [ebp - 0x30]
call fcn.0045848c
add esp, 0xc
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x30]
xor edi, edi
mov word [ecx + eax*2], di
push dword [ebp - 0x58]
push dword [ebp - 0x6c]
push esi
call fcn.0045848c
add esp, 0xc
mov eax, dword [ebp - 0x58]
mov word [esi + eax*2], di
mov eax, dword [ebp + 0xc]
push eax
push esi
push dword [ebp - 0x30]
push dword [ebp + 8]
call fcn.00404232
add esp, 0x10
push esi
call fcn.0045809c
add esp, 4
push dword [ebp - 0x30]
call fcn.0045809c
add esp, 4
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x70], eax
push ebx
call fcn.00401e4d
add esp, 4
mov edx, dword [ebp - 0x70]
mov ecx, 0x70749f9
cmp edx, eax
jb 0x406586
mov ecx, 0xf8de3edb
mov dword [ebp - 0x10], ecx
jmp 0x4050fa
mov eax, dword [ebp - 0x94]
xor esi, esi
mov word [eax], si
push 0x14
push 0x46c230
push dword [ebp - 0x50]
call fcn.00447850
add esp, 0xc
mov eax, 4
push eax
push 0x46c244
push 0xa
push dword [ebp - 0x50]
call fcn.0040a250
add esp, 0x10
push dword [ebp - 0x50]
push dword [ebp - 0x1c]
call dword [sym.imp.KERNEL32.dll_lstrcatW]
push eax
mov edi, esp
mov word [edi + 2], si
movzx eax, word [0x46c24c]
mov word [edi], ax
xor eax, eax
inc eax
push eax
push 0x46c24e
push eax
push edi
call fcn.0040a250
add esp, 0x10
push dword [ebp + 0xc]
push 0xa00000
push 2
push dword [ebp - 0x1c]
push edi
push dword [ebp - 0x5c]
call fcn.004128ee
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x14]
add eax, 0x3e
shr eax, 3
and eax, 0x1fffe000
mov dword [ebp - 0x14], eax
push eax
call fcn.004022ed