Function at 0x404439
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x9c
mov dword [ebp - 0x10], 0x51b839a9
mov dword [ebp - 0x6c], 0xecdf6698
cmp dword [ebp + 0x10], 0
je 0x404460
mov dword [ebp - 0x6c], 0x25f0df3e
mov edi, dword [ebp + 8]
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcatW]
mov eax, dword [ebp - 0x10]
cmp eax, 0xe91922a
jg 0x4044f2
cmp eax, 0xc8796e45
jg 0x40457a
cmp eax, 0xa6cf3faf
jg 0x40469f
cmp eax, 0x9155bc3e
jle 0x404933
cmp eax, 0x9a33fd1e
jg 0x404a38
cmp eax, 0x9450b9f6
jg 0x40526f
cmp eax, 0x9155bc3f
je 0x4058f8
cmp eax, 0x92982a6a
jne 0x404469
mov eax, dword [ebp - 0x18]
shr eax, 0xb
imul ecx, eax, 0x9f6
imul eax, eax
imul edx, eax, 0x3f9
dec edx
add ecx, 0x69d5c
mov dword [ebp - 0x18], ecx
mov ecx, 0x65908f0b
cmp edx, eax
je 0x405d73
mov ecx, 0xc4716f29
jmp 0x405d73
cmp eax, 0x46f9ae40
jle 0x4045f2
cmp eax, 0x60d2ceb9
jle 0x40475c
cmp eax, 0x70763da4
jle 0x4049e4
cmp eax, 0x79a2d74a
jg 0x404ad3
cmp eax, 0x73586f09
jg 0x40539a
cmp eax, 0x70763da5
je 0x405a19
cmp eax, 0x70aa3904
jne 0x404469
imul esi, dword [ebp - 0x14], 0xd4
add esi, 0xffff57e4
mov dword [ebp - 0x14], esi
push esi
push 0x3a40
push 0x5a51
push 0x3f49
call fcn.00405e0f
add esp, 0x10
mov eax, 0x5f297fbe
cmp esi, 0x31
jl 0x4054c3
jmp 0x405c35
cmp eax, 0xe3338a6b
jle 0x4046f7
cmp eax, 0xf71de2b2
jle 0x404991
cmp eax, 0x8407ca5
jg 0x404a75
cmp eax, 0xfe453b5a
jg 0x4052a0
cmp eax, 0xf71de2b3
je 0x40591b
cmp eax, 0xf82b000b
jne 0x404469
mov eax, dword [ebp - 0x18]
lea ecx, [eax + 0x60]
imul ecx, ecx
imul edx, ecx, 0x5cc7
dec edx
add eax, eax
add eax, 0xc0
and eax, 0xfffffe
mov dword [ebp - 0x18], eax
mov eax, 0xf4c9db99
cmp edx, ecx
je 0x405ba2
mov eax, 0xd751bc68
jmp 0x405ba2
cmp eax, 0x248f5c3e
jg 0x404645
cmp eax, 0x15c7191a
jle 0x40479b
cmp eax, 0x1b32dba1
jle 0x404b04
cmp eax, 0x237e9f4d
jg 0x404ed4
cmp eax, 0x1b32dba2
je 0x4054cd
cmp eax, 0x1c641ebb
jne 0x404469
mov eax, dword [ebp - 0x3c]
mov word [eax + 0xe], 0
mov dword [ebp - 0x10], 0xab442eb3
jmp 0x404469
cmp eax, 0x2de6f6c2
jg 0x4047d9
cmp eax, 0x2757b77c
jle 0x404bb7
cmp eax, 0x2c302012
jg 0x404f1a
cmp eax, 0x2757b77d
je 0x40550b
cmp eax, 0x2b95721a
jne 0x404469
imul eax, dword [ebp - 0x18], 0xc99e
add eax, 0xffffff1a
shr eax, 0xc
add eax, 0x9e
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x5f297fbe
jmp 0x404469
cmp eax, 0xbfd66395
jg 0x404829
cmp eax, 0xb60542f6
jg 0x404c45
cmp eax, 0xad68e060
jg 0x404f8e
cmp eax, 0xa6cf3fb0
je 0x40559f
cmp eax, 0xab442eb3
jne 0x404469
mov eax, dword [ebp - 0x18]
add eax, eax
add eax, 0xd1
shr eax, 0xb
add eax, 0x94
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xdbd6c2fa
jmp 0x404469
cmp eax, 0xd74e8f9b
jg 0x40488b
cmp eax, 0xccdc7c28
jle 0x404c93
cmp eax, 0xd037ed27
jg 0x404fed
cmp eax, 0xccdc7c29
je 0x4055e7
cmp eax, 0xce39fa32
jne 0x404469
push dword [ebp - 0x50]
push dword [ebp - 0x68]
call ebx
push 2
push 0x104
call fcn.0044f313
add esp, 8
mov dword [ebp - 0x1c], eax
mov eax, dword [edi]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0x10], 0x9f448da0
jmp 0x404469
cmp eax, 0x52d13228
jg 0x4048ed
cmp eax, 0x50c9e6d2
jle 0x404d68
cmp eax, 0x52218dde
jg 0x40509d
cmp eax, 0x50c9e6d3
je 0x405776
cmp eax, 0x51b839a9
jne 0x404469
mov eax, dword [ebp - 0x6c]
jmp 0x405ba2
cmp eax, 0x10f143bc
jle 0x404b47
cmp eax, 0x122676bd
jg 0x404e9d
cmp eax, 0x10f143bd
je 0x405471
cmp eax, 0x11bad7f8
jne 0x404469
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x10], 0xd037ed28
jmp 0x404469
cmp eax, 0x38afd52b
jle 0x404beb
cmp eax, 0x3efeb6f6
jg 0x404f52
cmp eax, 0x38afd52c
je 0x40552d
cmp eax, 0x3d03b41d
jne 0x404469
imul eax, dword [ebp - 0x18], 0x64000
or eax, 0x57
imul eax, eax, 0x1fc
add eax, 0x1b8
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xecdf6698
jmp 0x404469
cmp eax, 0xc39ae897
jle 0x404cd8
cmp eax, 0xc59970ae
jg 0x405024
cmp eax, 0xc39ae898
je 0x40561a
cmp eax, 0xc4716f29
jne 0x404469
mov eax, dword [ebp - 0x54]
movzx ecx, word [0x4661f4]
mov word [eax], cx
xor eax, eax
inc eax
push eax
push 0x4661f6
push eax
push dword [ebp - 0x54]
call fcn.00408c50
add esp, 0x10
push dword [ebp - 0x54]
push dword [ebp - 0x1c]
call ebx
mov dword [ebp - 0x10], 0xef2d7321
jmp 0x404469
cmp eax, 0xdbd6c2f9
jle 0x404d15
cmp eax, 0xdfa9155e
jg 0x405046
cmp eax, 0xdbd6c2fa
je 0x40563e
cmp eax, 0xdedf8c5b
jne 0x404469
mov eax, dword [ebp - 0x18]
add eax, 0xffffff9d
imul ecx, eax, 0x1d4000
imul eax, eax
imul edx, eax, 0x85bb
dec edx
add ecx, 0xffff3e38
mov dword [ebp - 0x18], ecx
mov ecx, 0x42a147d7
cmp edx, eax
je 0x405d73
mov ecx, 0xf3c44f34
jmp 0x405d73
cmp eax, 0x59cde4c3
jle 0x404dab
cmp eax, 0x5e8f13d7
jg 0x40513b
cmp eax, 0x59cde4c4
je 0x4057b5
cmp eax, 0x5aea3169
jne 0x404469
mov eax, dword [ebp - 0x18]
shr eax, 0x16
and eax, 0x1ff
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x52cb6d0f
jmp 0x404469
cmp eax, 0x8bbf7987
jle 0x404df3
cmp eax, 0x8e609321
jg 0x40517a
cmp eax, 0x8bbf7988
je 0x4057f2
cmp eax, 0x8d0034ee
jne 0x404469
push 0x14
push 0x466200
push dword [ebp - 0x58]
call fcn.004441d0
add esp, 0xc
push 8
push 0x466214
push 0xa
push dword [ebp - 0x58]
call fcn.00408c50
add esp, 0x10
mov dword [ebp - 0x10], 0x8fbef110
jmp 0x404469
cmp eax, 0xef2d7320
jle 0x404e31
cmp eax, 0xf3c44f33
jg 0x4051ae
cmp eax, 0xef2d7321
je 0x40582c
cmp eax, 0xf16eb3a5
jne 0x404469
mov ecx, dword [ebp - 0x14]
shr ecx, 7
add ecx, 0x78
shr ecx, 0xd
mov dword [ebp - 0x14], ecx
mov eax, 0x2757b77d
cmp ecx, 0x51
je 0x405ba2
mov eax, 0xc3f596a
jmp 0x405ba2
cmp eax, 0x65908f0a
jle 0x404e6a
cmp eax, 0x6a09046b
jg 0x4051fb
cmp eax, 0x65908f0b
je 0x40589f
cmp eax, 0x6753e745
jne 0x404469
imul ecx, dword [ebp - 0x14], 0xec
add ecx, 0x7a37
mov dword [ebp - 0x14], ecx
mov eax, 0x9f448da0
cmp ecx, 0x3f
je 0x405c35
mov eax, 0xf3c44f34
jmp 0x405c35
cmp eax, 0x9f448d9f
jg 0x405307
cmp eax, 0x9a33fd1f
je 0x40594c
cmp eax, 0x9e7933d8
jne 0x404469
push dword [edi + 4]
push dword [ebp - 0x68]
call ebx
sub esp, 0x30
mov eax, esp
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x10], 0xdedf8c5b
jmp 0x404469
cmp eax, 0xc3f5969
jg 0x40535b
cmp eax, 0x8407ca6
je 0x405977
cmp eax, 0x90449e6
jne 0x404469
mov eax, dword [ebp - 0x18]
mov ecx, 0xfffffeed
add eax, ecx
imul ecx, eax, 0x19c00
imul eax, eax
imul edx, eax, 0x8f1
dec edx
shr ecx, 5
and ecx, 0x7ffff00
mov dword [ebp - 0x18], ecx
mov ecx, 0x48be62ac
cmp eax, edx
je 0x405d73
mov ecx, 0x248d13fd
jmp 0x405d73
cmp eax, 0x7c3c8df0
jg 0x4053cd
cmp eax, 0x79a2d74b
je 0x405a65
cmp eax, 0x7ae74500
jne 0x404469
shl dword [ebp - 0x18], 0xf
mov dword [ebp - 0x10], 0x1a25d7b0
jmp 0x404469
cmp eax, 0x18284416
jg 0x4053fd
cmp eax, 0x15c7191b
je 0x40543d
cmp eax, 0x16d1102e
jne 0x404469
push dword [ebp + 0x10]
call fcn.00401702
add esp, 4
mov ecx, 0x3d03b41d
test eax, eax
je 0x405d73
mov ecx, 0xd63b6546
jmp 0x405d73
cmp eax, 0xe91922b
je 0x405c3d
cmp eax, 0xf0e9939
je 0x405ac9
cmp eax, 0xf2724f3
jne 0x404469
mov eax, dword [ebp - 0x30]
movzx ecx, word [0x472406]
mov word [eax], cx
mov eax, 2
push eax
push 0x472408
push eax
push dword [ebp - 0x30]
call fcn.00408b20
add esp, 0x10
push dword [ebp - 0x30]
push dword [ebp - 0x20]
call fcn.00401467
add esp, 8
mov dword [ebp - 0x78], eax
push dword [ebp - 0x74]
call fcn.00450770
add esp, 4
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x10], 0x7c3c8df1
jmp 0x404469
cmp eax, 0x248f5c3f
je 0x405c58
cmp eax, 0x25f0df3e
je 0x405afc
cmp eax, 0x2707876c
jne 0x404469
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x10], 0x248f5c3f
jmp 0x404469
cmp eax, 0x2de6f6c3
je 0x405c87
cmp eax, 0x2f11d842
je 0x405b08
cmp eax, 0x354f2d71
jne 0x404469
imul esi, dword [ebp - 0x14], 0xae
add esi, 0xffffd11a
mov dword [ebp - 0x14], esi
push 0x6326
push esi
call fcn.00402169
add esp, 8
mov eax, 0xe0cca6e
cmp esi, 0xd7
jl 0x405c35
mov eax, 0x1b32dba2
jmp 0x405c35
cmp eax, 0xbd7fb9b1
jg 0x405414
cmp eax, 0xb60542f7
je 0x405450
cmp eax, 0xb74ab1ed
jne 0x404469
imul esi, dword [ebp - 0x14], 0x5b8
add esi, 0xffffbe3c
mov dword [ebp - 0x14], esi
call fcn.00401a66
mov eax, 0xbd7fb9b2
cmp esi, 0x40
jge 0x405c35
mov eax, 0xbe8f9533
jmp 0x405c35
cmp eax, 0xc8796e46
je 0x405ca7
cmp eax, 0xc965bce1
je 0x405999
cmp eax, 0xcbb9b7d7
jne 0x404469
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x7c], eax
push dword [ebp + 0x10]
call fcn.00401702
add esp, 4
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x10], 0x2d1269a4
jmp 0x404469
cmp eax, 0xbfd66396
je 0x405cb9
cmp eax, 0xc03c3a45
je 0x405b23
cmp eax, 0xc2f648f0
jne 0x404469
mov eax, dword [ebp - 0x18]
lea eax, [eax + eax*8]
lea eax, [eax*4 - 0x786]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x2757b77d
jmp 0x404469
cmp eax, 0xd74e8f9c
je 0x405cd3
cmp eax, 0xd751bc68
je 0x405b3b
cmp eax, 0xdb67837d
jne 0x404469
imul esi, dword [ebp - 0x14], 0xb8
add esi, 0xffffffd7
mov eax, esi
shr eax, 0xc
mov dword [ebp - 0x14], eax
call fcn.00407763
mov eax, 0xa0ad3909
cmp esi, 0xa0000
jb 0x405c35
mov eax, 0xc39ae898
jmp 0x405c35
cmp eax, 0x46f9ae41
je 0x405cfe
cmp eax, 0x48be62ac
je 0x405b75
cmp eax, 0x497328e7
jne 0x404469
mov eax, dword [ebp - 0x5c]
mov word [eax + 2], 0
mov eax, dword [ebp - 0x5c]
movzx ecx, word [0x466224]
mov word [eax], cx
mov dword [ebp - 0x10], 0x237e9f4e
jmp 0x404469
cmp eax, 0x52d13229
je 0x405d26
cmp eax, 0x540130e6
je 0x405baa
cmp eax, 0x575b3469
jne 0x404469
mov ecx, dword [ebp - 0x14]
shl ecx, 4
add ecx, 0xffffff17
mov dword [ebp - 0x14], ecx
mov eax, 0xc3f596a
cmp ecx, 0x23
jae 0x405ba2
mov eax, 0xf16eb3a5
jmp 0x405ba2
cmp eax, 0x85cf91c8
je 0x405d46
cmp eax, 0x85d3abf1
je 0x405bc2
cmp eax, 0x86e1b768
jne 0x404469
mov eax, dword [ebp - 0x18]
lea eax, [eax + eax*4]
shl eax, 0x10
add eax, 0x2600000
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x42a147d7
jmp 0x404469
cmp eax, 0xe3338a6c
je 0x405d7b
cmp eax, 0xecdf6698
je 0x405bfc
cmp eax, 0xeef9c23e
jne 0x404469
mov eax, dword [ebp - 0x14]
shl eax, 0x18
add eax, 0xffffff8a
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0xf0e9939
jmp 0x404469
cmp eax, 0x60d2ceba
je 0x405d9f
cmp eax, 0x64a001eb
je 0x405c08
cmp eax, 0x6507472e
jne 0x404469
push eax
mov eax, esp
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x10], 0x5e8f13d8
jmp 0x404469
cmp eax, 0x122676be
je 0x4054ac
cmp eax, 0x12d19224
jne 0x404469
push eax
sub esp, 0x2c
mov eax, esp
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
add eax, 0x2c
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x10], 0x2b95721a
jmp 0x404469
cmp eax, 0x237e9f4e
je 0x4054ea
cmp eax, 0x248d13fd
jne 0x404469
mov eax, dword [ebp - 0x24]
movzx ecx, word [0x4723fa]
mov word [eax], cx
mov eax, 2
push eax
push 0x4723fc
push eax
push dword [ebp - 0x24]
call fcn.00408b20
add esp, 0x10
mov dword [ebp - 0x10], 0xc2f648f0
jmp 0x404469
cmp eax, 0x2c302013
je 0x405563
cmp eax, 0x2d1269a4
jne 0x404469
mov eax, dword [ebp - 0x18]
shr eax, 1
mov ecx, eax
shl ecx, 7
lea eax, [ecx + eax*2]
add eax, 0x2f
shr eax, 3
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x73586f0a
jmp 0x404469
cmp eax, 0x3efeb6f7
je 0x405575
cmp eax, 0x42a147d7
jne 0x404469
sub esp, 4
push dword [ebp + 0xc]
push dword [ebp - 0x48]
push edi
call fcn.00403b48
add esp, 0x10
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x10], 0xc03c3a45
jmp 0x404469
cmp eax, 0xad68e061
je 0x4056b8
cmp eax, 0xb4123765
jne 0x404469
imul esi, dword [ebp - 0x14], 0xe2
add esi, 0x19a82
mov dword [ebp - 0x14], esi
push 0x4150
push esi
push 0x49c3
push 0x4449
call fcn.004024f9
add esp, 0xc
push esi
call fcn.004019d9
add esp, 8
mov eax, 0x6753e745
cmp esi, 0x14
jl 0x405c35
mov eax, 0x6507472e
jmp 0x405c35
cmp eax, 0xd037ed28
je 0x405cf2
cmp eax, 0xd63b6546
jne 0x404469
mov eax, dword [ebp - 0x18]
shl eax, 0xd
add eax, 0xfffffef2
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x11bad7f8
mov dword [ebp - 0x70], 0
jmp 0x404469
cmp eax, 0xc59970af
je 0x4056fa
cmp eax, 0xc840a9dc
jne 0x404469
mov dword [ebp - 0x10], 0xe91922b
jmp 0x404469
cmp eax, 0xdfa9155f
je 0x405727
cmp eax, 0xe220360f
jne 0x404469
push 0x1e
push 0x466190
push dword [ebp - 0x4c]
call fcn.004441d0
add esp, 0xc
push 4
push 0x4661ae
push 0xf
push dword [ebp - 0x4c]
call fcn.00408c50
add esp, 0xc
push dword [ebp + 0xc]
push dword [ebp - 0x4c]
push edi
call fcn.00403b48
add esp, 0x10
mov dword [ebp - 0x10], 0xbe8f9533
jmp 0x404469
cmp eax, 0x52218ddf
je 0x4057ca
cmp eax, 0x52cb6d0f
jne 0x404469
mov eax, 7
push eax
push 0x46614c
push 0x16
push dword [ebp - 0x44]
call fcn.00408c50
add esp, 0xc
mov esi, dword [ebp + 0xc]
push esi
push dword [ebp - 0x44]
push edi
call fcn.00403b48
add esp, 0x10
sub esp, 0x10
mov ebx, esp
mov word [ebx + 0xe], 0
movzx eax, word [0x466166]
mov word [ebx + 0xc], ax
mov eax, dword [0x466162]
mov dword [ebx + 8], eax
mov eax, dword [0x46615e]
mov dword [ebx + 4], eax
mov eax, dword [0x46615a]
mov dword [ebx], eax
push 4
push 0x466168
mov eax, 7
push eax
push ebx
call fcn.00408c50
add esp, 0xc
push esi
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcatW]
push edi
call fcn.00403b48
add esp, 0x10
mov dword [ebp - 0x10], 0x52d13229
jmp 0x404469
cmp eax, 0x5e8f13d8
je 0x4057dd
cmp eax, 0x5f297fbe
jne 0x404469
mov eax, dword [ebp - 0x9c]
mov word [eax], 0
push 0x2c
push str.U5_5f
push dword [ebp - 0x44]
call fcn.004441d0
add esp, 0xc
mov dword [ebp - 0x10], 0x5aea3169
jmp 0x404469
cmp eax, 0x8e609322
je 0x405851
cmp eax, 0x8fbef110
jne 0x404469
imul eax, dword [ebp - 0x18], 0x7000
and eax, 0x1fff000
or eax, 0x32
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xbfd66396
jmp 0x404469
cmp eax, 0xf3c44f34
je 0x405864
cmp eax, 0xf4c9db99
jne 0x404469
imul esi, dword [ebp - 0x14], 0x1a60
mov dword [ebp - 0x14], esi
push 0x48d2
push esi
push 0x3321
push 0x25
call fcn.00408c50
add esp, 0x10
mov eax, 0x575b3469
cmp esi, 0x78
jge 0x405ba2
mov eax, 0x64a001eb
jmp 0x405ba2
cmp eax, 0x6a09046c
je 0x4058c1
cmp eax, 0x6b16394d
jne 0x404469
imul ebx, dword [ebp - 0x14], 0x1640
add ebx, 0xffffc53f
mov esi, ebx
shr esi, 9
add esi, 0x22
mov dword [ebp - 0x14], esi
push esi
push 0x1fe
push 0x3411
call fcn.004016a7
add esp, 0xc
push 0x5094
push 0x37d0
push esi
call fcn.00402734
add esp, 0xc
mov eax, 0xfe453b5b
cmp ebx, 0x6000
jae 0x405261
mov eax, 0x7c3c8df1
mov dword [ebp - 0x10], eax
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcatW]
jmp 0x404469
cmp eax, 0x9450b9f7
je 0x4059a5
cmp eax, 0x967633bf
jne 0x404469
imul eax, dword [ebp - 0x18], 0xd30000
add eax, 0x7eb06000
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x497328e7
jmp 0x404469
cmp eax, 0xfe453b5b
je 0x4059c5
cmp eax, 0xfecaa876
jne 0x404469
mov eax, dword [ebp - 0xa0]
mov word [eax], 0
mov eax, dword [ebp - 0x48]
mov ecx, dword [0x46617c]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x466178]
mov dword [eax + 8], ecx
mov ecx, dword [0x466174]
mov dword [eax + 4], ecx
mov ecx, dword [0x466170]
mov dword [eax], ecx
push 4
push 0x466180
push 8
push dword [ebp - 0x48]
call fcn.00408c50
add esp, 0x10
mov dword [ebp - 0x10], 0x86e1b768
jmp 0x404469
cmp eax, 0x9f448da0
je 0x4059e6
cmp eax, 0xa0ad3909
jne 0x404469
imul esi, dword [ebp - 0x14], 0xff8
add esi, 0xfffff794
mov eax, esi
shr eax, 6
mov dword [ebp - 0x14], eax
push eax
push 0x2222
call fcn.00401530
add esp, 8
mov eax, 0xc840a9dc
cmp esi, 0x1fc0
jb 0x405c35
mov eax, 0xd751bc68
jmp 0x405c35
cmp eax, 0xc3f596a
je 0x4059fd
cmp eax, 0xe0cca6e
jne 0x404469
imul eax, dword [ebp - 0x14], 0xe1
add eax, 0x8052
mov dword [ebp - 0x14], eax
push 0x3aec
push eax
call fcn.0040208f
add esp, 8
mov dword [ebp - 0x10], 0x1c641ebb
jmp 0x404469
cmp eax, 0x73586f0a
je 0x405a81
cmp eax, 0x78ec2c19
jne 0x404469
push dword [ebp - 0x90]
call fcn.004500f4
add esp, 4
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x10], 0xa6cf3fb0
jmp 0x404469
cmp eax, 0x7c3c8df1
je 0x405aa4
cmp eax, 0x7feae69e
jne 0x404469
mov eax, dword [ebp - 0x64]
add eax, eax
add eax, 2
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x10], 0x78ec2c19
jmp 0x404469
cmp eax, 0x18284417
jne 0x405db6
mov dword [ebp - 0x10], 0x7feae69e
jmp 0x404469
cmp eax, 0xbe8f9533
jne 0x405dc2
push 2
push 0x104
call fcn.0044f313
add esp, 8
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x10], 0x9e7933d8
jmp 0x404469
mov eax, dword [ebp - 0x30]
mov byte [eax + 2], 0
mov dword [ebp - 0x10], 0x540130e6
jmp 0x404469
push eax
sub esp, 0x10
mov eax, esp
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
add eax, 0x10
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x10], 0xfecaa876
jmp 0x404469
mov eax, dword [ebp - 0x18]
shr eax, 5
imul ecx, eax, 0xb5
imul ecx, ecx
imul edx, ecx, 0x953
dec edx
imul eax, eax, 0x5a8000
add eax, 0x23800
mov dword [ebp - 0x18], eax
mov eax, 0x248f5c3f
cmp ecx, edx
je 0x405ba2
mov eax, 0xce39fa32
jmp 0x405ba2
imul ecx, dword [ebp - 0x14], 0xea0000
mov dword [ebp - 0x14], ecx
mov eax, 0x5f297fbe
test ecx, ecx
je 0x405c35
mov eax, 0x59cde4c4
jmp 0x405c35
mov eax, dword [ebp - 0x14]
shl eax, 0x13
and eax, 0x7c000000
add eax, 0xffffffe3
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x12d19224
jmp 0x404469
xor eax, eax
inc eax
push eax
push 0x466226
push eax
push dword [ebp - 0x5c]
call fcn.00408c50
add esp, 0x10
mov dword [ebp - 0x10], 0x7ae74500
jmp 0x404469
push 2
push dword [ebp - 0x24]
push dword [ebp - 0x20]
call fcn.00401666
add esp, 0xc
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x10], 0x79a2d74b
jmp 0x404469
imul eax, dword [ebp - 0x18], 0x26
add eax, 0xffffff16
shr eax, 8
imul ecx, eax, 0x72
imul eax, eax
imul edx, eax, 0x858b
dec edx
add ecx, 0x1f
mov dword [ebp - 0x18], ecx
mov ecx, 0x248d13fd
cmp eax, edx
je 0x405d73
mov ecx, 0xc3f596a
jmp 0x405d73
push eax
mov eax, esp
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], 0x70763da5
jmp 0x404469
mov eax, dword [ebp - 0x14]
lea ecx, [eax + eax*8]
lea ecx, [eax + ecx*8]
add ecx, 0x56b0
mov dword [ebp - 0x14], ecx
mov eax, 0x354f2d71
cmp ecx, 0x6a
jl 0x405c35
mov eax, 0xdbd6c2fa
jmp 0x405c35
push dword [ebp - 0x60]
push dword [ebp - 0x74]
push dword [ebp - 0x34]
call fcn.0045013c
add esp, 0xc
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x34]
mov word [ecx + eax*2], 0
push dword [ebp - 0x64]
push dword [ebp - 0x78]
push dword [ebp - 0x38]
call fcn.0045013c
add esp, 0xc
mov eax, dword [ebp - 0x64]
add eax, eax
add eax, dword [ebp - 0x38]
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x10], 0x50c9e6d3
jmp 0x404469
imul eax, dword [ebp - 0x18], 0x2f
mov ecx, eax
imul ecx, eax
shr eax, 5
imul edx, ecx, 0x7ae1
dec edx
imul eax, eax, 0x26aa
mov dword [ebp - 0x18], eax
mov eax, 0x59cde4c4
cmp ecx, edx
je 0x405ba2
mov eax, 0x1c641ebb
jmp 0x405ba2
mov ecx, dword [ebp - 0x14]
shl ecx, 0xf
or ecx, 0x2f
mov dword [ebp - 0x14], ecx
mov eax, 0x50c9e6d3
cmp ecx, 0x57
jl 0x405c35
mov eax, 0x7feae69e
jmp 0x405c35
mov eax, dword [ebp - 0x3c]
movzx ecx, word [0x4660ee]
mov word [eax + 0xc], cx
mov ecx, dword [0x4660ea]
mov dword [eax + 8], ecx
mov ecx, dword [0x4660e6]
mov dword [eax + 4], ecx
mov ecx, dword [0x4660e2]
mov dword [eax], ecx
push 4
push 0x4660f0
push 7
push dword [ebp - 0x3c]
call fcn.00408c50
add esp, 0xc
push dword [ebp + 0xc]
push dword [ebp - 0x3c]
push edi
call fcn.00403b48
add esp, 0x10
sub esp, 0x18
mov eax, esp
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov word [eax + 0x14], 0
push 0x14
push 0x466100
push dword [ebp - 0x40]
call fcn.004441d0
add esp, 0xc
mov dword [ebp - 0x10], 0x2707876c
jmp 0x404469
mov eax, dword [ebp - 0x14]
shr eax, 5
imul esi, eax, 0x9f
mov eax, 0x9f
add esi, eax
shr esi, 4
mov dword [ebp - 0x14], esi
push 0x3f3f
push esi
call fcn.00401467
add esp, 8
mov eax, 0x2c302013
cmp esi, 0xe7
je 0x405c35
mov eax, 0x79a2d74b
jmp 0x405c35
mov ecx, dword [ebp - 0x14]
add ecx, 0xffffffb9
shr ecx, 6
add ecx, 0xffffff78
mov dword [ebp - 0x14], ecx
mov eax, 0x9a33fd1f
cmp ecx, 0xc7
jb 0x405c35
mov eax, 0xdb67837d
jmp 0x405c35
mov eax, dword [ebp - 0x14]
lea ebx, [eax*4 + 0x2dc]
shr ebx, 0xe
mov esi, 0xa6cf3fb0
and ebx, 0x38000
mov dword [ebp - 0x14], ebx
je 0x405749
mov esi, 0x15c7191b
sub esp, 4
push ebx
push 0xdbd
call fcn.004021e1
add esp, 0xc
push ebx
push 0x19d5
call fcn.00401530
add esp, 8
mov dword [ebp - 0x10], esi
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcatW]
jmp 0x404469
mov eax, dword [ebp - 0x94]
mov word [eax], 0
push dword [ebp + 0xc]
push dword [ebp - 0x38]
push dword [ebp - 0x34]
push edi
call fcn.004034d1
add esp, 0x10
push dword [ebp - 0x38]
call fcn.0044fd4c
add esp, 4
push dword [ebp - 0x34]
call fcn.0044fd4c
add esp, 4
mov dword [ebp - 0x10], 0x85cf91c8
jmp 0x404469
push eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x10], 0xccdc7c29
jmp 0x404469
mov eax, dword [ebp - 0x24]
mov byte [eax + 2], 0
mov dword [ebp - 0x10], 0x90449e6
jmp 0x404469
mov eax, dword [ebp - 0x54]
mov word [eax + 2], 0
mov dword [ebp - 0x10], 0x92982a6a
jmp 0x404469
imul eax, dword [ebp - 0x18], 0xeb0
shr eax, 0xe
imul ecx, eax, 0xb9
imul eax, eax
imul edx, eax, 0x62f9
dec edx
add ecx, 0xf3
mov dword [ebp - 0x18], ecx
mov ecx, 0x52cb6d0f
cmp eax, edx
je 0x405d73
mov ecx, 0x60d2ceba
jmp 0x405d73
push dword [edi + 8]
push dword [ebp - 0x1c]
call ebx
sub esp, 0x18
mov eax, esp
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
mov word [eax + 0x14], 0
mov dword [ebp - 0x10], 0x8d0034ee
jmp 0x404469
mov dword [ebp - 0x18], 0x7ffff326
mov dword [ebp - 0x10], 0x6507472e
jmp 0x404469
mov eax, dword [ebp - 0x50]
mov word [eax + 0x2c], 0
push 0x2c
push 0x4661c0
push dword [ebp - 0x50]
call fcn.004441d0
add esp, 0xc
push 4
push 0x4661ec
push 0x16
push dword [ebp - 0x50]
call fcn.00408c50
add esp, 0x10
mov dword [ebp - 0x10], 0x10f143bd
jmp 0x404469
imul ecx, dword [ebp - 0x14], 0xc6
mov dword [ebp - 0x14], ecx
mov eax, 0x5f297fbe
cmp ecx, 0x44
jge 0x405c35
mov eax, 0xb4123765
jmp 0x405c35
mov esi, dword [ebp - 0x14]
shl esi, 0xd
or esi, 0x12e
mov dword [ebp - 0x14], esi
push esi
call fcn.00402adb
add esp, 4
push esi
push 0x8a7
push 0x4a73
call fcn.0040205d
add esp, 0xc
mov dword [ebp - 0x10], 0xbe8f9533
jmp 0x404469
push dword [ebp - 0x80]
push dword [ebp + 0x10]
call fcn.00401711
add esp, 8
mov dword [ebp - 0x20], eax
push eax
mov eax, esp
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x10], 0x52218ddf
jmp 0x404469
imul esi, dword [ebp - 0x14], 0x4d8
add esi, 0xfffc5de4
mov dword [ebp - 0x14], esi
push 0x3b21
push esi
call fcn.0040290b
add esp, 8
mov eax, 0x52cb6d0f
cmp esi, 0xc
jae 0x405af2
jmp 0x405c35
imul ecx, dword [ebp - 0x14], 0xe8
add ecx, 0x1a2
mov dword [ebp - 0x14], ecx
mov eax, 0xc840a9dc
cmp ecx, 0xcc
jl 0x405c35
mov eax, 0xdfa9155f
jmp 0x405c35
imul eax, dword [ebp - 0x14], 0x1fa0
add eax, 0xffffa2c6
mov dword [ebp - 0x14], eax
push eax
push 0x1caa
push 0x48cc
call fcn.00404439
add esp, 0xc
mov dword [ebp - 0x10], 0xc8796e46
jmp 0x404469
mov eax, dword [ebp - 0x18]
shr eax, 0xf
imul eax, eax, 0xba
add eax, 0x11d
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x12d19224
jmp 0x404469
mov eax, dword [ebp - 0x8c]
add eax, 2
push eax
call fcn.004500f4
add esp, 4
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x10], 0x2f11d842
jmp 0x404469
push dword [ebp - 0xa8]
push dword [ebp - 0x1c]
call ebx
mov dword [ebp - 0x10], 0x8e609322
jmp 0x404469
cmp dword [ebp - 0x88], 0
mov eax, 0xecdf6698
je 0x405ba2
mov eax, 0xc965bce1
jmp 0x405ba2
mov eax, dword [ebp - 0x28]
mov byte [eax + 2], 0
mov eax, dword [ebp - 0x28]
movzx ecx, word [0x4723fe]
mov word [eax], cx
mov esi, 2
push esi
push 0x472400
push esi
push dword [ebp - 0x28]
call fcn.00408b20
add esp, 0x10
push esi
push dword [ebp - 0x28]
push dword [ebp - 0x20]
call fcn.00401666
add esp, 0xc
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x10], 0x38afd52c
jmp 0x404469
cmp dword [ebp - 0x84], 0
mov eax, 0xecdf6698
je 0x405ba2
mov eax, 0x85d3abf1
jmp 0x405ba2
mov ecx, dword [ebp - 0x7c]
mov eax, 0x11bad7f8
cmp ecx, dword [ebp - 0x98]
jb 0x405a96
mov eax, 0xecdf6698
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x70], eax
jmp 0x404469
push dword [ebp - 0x78]
call fcn.00450770
add esp, 4
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x60]
add eax, eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x10], 0xfe453b5b
jmp 0x404469
mov eax, dword [ebp - 0x14]
shr eax, 2
imul ecx, eax, 0x7523
add ecx, 0x5a47
shr ecx, 0xf
mov dword [ebp - 0x14], ecx
mov eax, 0x6507472e
cmp ecx, 0xa8
je 0x405c35
mov eax, 0x5f297fbe
jmp 0x405c35
mov dword [ebp - 0x10], 0x16d1102e
jmp 0x404469
imul eax, dword [ebp - 0x18], 0x3c0
add eax, 0x36d80
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x18284417
jmp 0x404469
mov eax, dword [ebp - 0x4c]
add eax, 0x1e
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0x10], 0x8bbf7988
jmp 0x404469
mov eax, 2
push eax
push 0x472404
push eax
push dword [ebp - 0x2c]
call fcn.00408b20
add esp, 0x10
push dword [ebp - 0x2c]
push dword [ebp - 0x20]
call fcn.00401467
add esp, 8
mov dword [ebp - 0x74], eax
push eax
mov eax, esp
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x10], 0xc840a9dc
jmp 0x404469
mov eax, dword [ebp - 0x14]
lea esi, [eax*4 - 0xf8]
mov eax, esi
shr eax, 0x15
mov dword [ebp - 0x14], eax
push eax
call fcn.00401a3b
add esp, 4
mov eax, 0x16d1102e
cmp esi, 0x1c000000
jb 0x405ba2
mov eax, 0x52218ddf
mov dword [ebp - 0x10], eax
jmp 0x404469
mov eax, dword [ebp - 0x18]
shl eax, 0xa
add eax, 0xffffffe5
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xf2724f3
jmp 0x404469
mov eax, dword [ebp - 0x18]
mov ecx, 0xffffff5d
add eax, ecx
imul ecx, eax, 0xb8000
imul eax, eax
imul edx, eax, 0x1c97
dec edx
add ecx, 0xa0000
mov dword [ebp - 0x18], ecx
mov ecx, 0xd74e8f9c
cmp edx, eax
je 0x405d73
mov ecx, 0x2c302013
jmp 0x405d73
mov dword [ebp - 0x10], 0x59cde4c4
jmp 0x404469
mov esi, dword [ebp - 0x14]
mov eax, 0x84
add esi, eax
mov eax, esi
shr eax, 0xa
mov dword [ebp - 0x14], eax
push eax
call fcn.004018d2
add esp, 4
mov eax, 0xad68e061
cmp esi, 0x3b000
jae 0x405c35
mov eax, 0x8407ca6
mov dword [ebp - 0x10], eax
jmp 0x404469
imul eax, dword [ebp - 0x18], 0x5d8
add eax, 0xffffe110
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x15c7191b
jmp 0x404469
push 5
push 0x466114
push 0xa
push dword [ebp - 0x40]
call fcn.00408c50
add esp, 0xc
push dword [ebp + 0xc]
push dword [ebp - 0x40]
push edi
call fcn.00403b48
add esp, 0x10
mov dword [ebp - 0x10], 0x9450b9f7
jmp 0x404469
mov eax, dword [ebp - 0x2c]
mov byte [eax + 2], 0
mov eax, dword [ebp - 0x2c]
movzx ecx, word [0x472402]
mov word [eax], cx
mov dword [ebp - 0x10], 0xf82b000b
jmp 0x404469
push eax
mov eax, esp
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 0x2de6f6c3
jmp 0x404469
push dword [ebp - 0x58]
push dword [ebp - 0x1c]
call ebx
push eax
mov eax, esp
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x10], 0x967633bf
jmp 0x404469
mov eax, dword [ebp - 0x14]
shl eax, 0xd
add eax, 0x1e3ed2
shr eax, 3
add eax, 0xcb
mov dword [ebp - 0x14], eax
push eax
call fcn.004012d9
add esp, 4
mov dword [ebp - 0x10], 0x9155bc3f
jmp 0x404469
mov eax, dword [ebp - 0x14]
shl eax, 0xe
and eax, 0xfffc000
or eax, 0x130
lea eax, [eax + eax*4]
shl eax, 4
add eax, 0xfffffff6
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x6b16394d
jmp 0x404469
mov eax, dword [ebp - 0x18]
shl eax, 4
and eax, 0x1ffff0
imul eax, eax, 0x3c
or eax, 0x2f
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xb60542f7
jmp 0x404469
mov eax, dword [ebp - 0x18]
add eax, 0xffffff8d
shr eax, 3
imul ecx, eax, 0x1ae0
imul eax, eax
imul edx, eax, 0x1f81
dec edx
add ecx, 0xffffffb2
mov dword [ebp - 0x18], ecx
mov ecx, 0xc59970af
cmp edx, eax
je 0x405d73
mov ecx, 0xcbb9b7d7
mov dword [ebp - 0x10], ecx
jmp 0x404469
imul eax, dword [ebp - 0x14], 0xf8
add eax, 0xffffedab
mov dword [ebp - 0x14], eax
push eax
call fcn.00401ba2
add esp, 4
mov dword [ebp - 0x10], 0x122676be
jmp 0x404469
mov eax, dword [ebp - 0xa4]
mov word [eax], 0
mov dword [ebp - 0x10], 0xe220360f
jmp 0x404469
cmp eax, 0x1a25d7b0
je 0x405def
jmp 0x404469
cmp eax, 0xbd7fb9b2
jne 0x404469
mov eax, dword [ebp - 0x14]
shr eax, 0xe
imul eax, eax, 0x1c1b68
shr eax, 1
imul eax, eax, 0x9b
mov dword [ebp - 0x14], eax
push eax
push 0x20eb
call fcn.004015db
push dword [ebp + 0xc]
push 0xa00000
push 2
push dword [ebp - 0x1c]
push dword [ebp - 0x5c]
push dword [ebp - 0x68]
call fcn.004117d2
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret