Function at 0x408f4c
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x6c
mov dword [ebp - 0x10], 0x7b829d7e
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov eax, dword [ebp - 0x10]
cmp eax, 0xede0b7b0
jg 0x408fde
cmp eax, 0xb3ca34d1
jle 0x409052
cmp eax, 0xd05b7f20
jle 0x40914f
cmp eax, 0xe112a8d7
jg 0x4092ca
cmp eax, 0xd914716e
jg 0x40955e
cmp eax, 0xd05b7f21
je 0x4099ac
cmp eax, 0xd562ff25
je 0x4099b8
cmp eax, 0xd5c46b10
jne 0x408f62
mov eax, dword [ebp - 0x14]
shr eax, 0xd
and eax, 0x3ff
mov ecx, eax
shl ecx, 6
lea eax, [ecx + eax*2]
add eax, 0x3ff0
mov dword [ebp - 0x14], eax
call fcn.0040a360
mov dword [ebp - 0x10], 0x154e76aa
jmp 0x408f62
cmp eax, 0x41e179c2
jg 0x4090db
cmp eax, 0x11f24230
jle 0x4091c0
cmp eax, 0x1f64fb15
jg 0x409302
cmp eax, 0x164f71a0
jg 0x4095b8
cmp eax, 0x11f24231
je 0x4099d2
cmp eax, 0x154e76aa
je 0x4099de
cmp eax, 0x15fa78a4
jne 0x408f62
mov eax, dword [ebp - 0x14]
shl eax, 0x15
mov ebx, 0xe57461c3
and eax, 0x600000
mov dword [ebp - 0x14], eax
je 0x409045
mov ebx, 0xf44ecfb2
call fcn.0040a360
mov dword [ebp - 0x10], ebx
jmp 0x408f62
cmp eax, 0x94fbdad9
jle 0x409224
cmp eax, 0xa7949b7d
jg 0x409348
cmp eax, 0x9dfccdd6
jg 0x40960f
cmp eax, 0x94fbdada
je 0x409a3b
cmp eax, 0x959ee4ba
je 0x409a7c
cmp eax, 0x9ddfb641
jne 0x408f62
movzx eax, byte [ebp - 0x11]
add eax, 0x2b
shr eax, 1
imul ebx, eax, 0xc1
mov dword [ebp - 0x14], ebx
push 0x481f
push 0x16f2
push 0x4c71
push ebx
call fcn.0040a600
add esp, 0x10
call fcn.0040a360
mov eax, 0xeb1fd2bb
cmp ebx, 0x6e
jb 0x40a342
mov eax, 0xd5c46b10
jmp 0x40a342
cmp eax, 0x58d7c06f
jle 0x409279
cmp eax, 0x719fe0fe
jg 0x409380
cmp eax, 0x630b484a
jg 0x409658
cmp eax, 0x58d7c070
je 0x409a9c
cmp eax, 0x5c26d242
je 0x409ab6
cmp eax, 0x5e631d97
jne 0x408f62
mov eax, dword [ebp - 0x14]
add eax, 0x5a
shr eax, 2
imul esi, eax, 0xce000
add esi, 0x56000
mov dword [ebp - 0x14], esi
call fcn.0040a360
push esi
call fcn.00408f4c
add esp, 4
mov dword [ebp - 0x10], 0x229630c
jmp 0x408f62
cmp eax, 0xc02aa3dd
jle 0x4093dc
cmp eax, 0xc7e3c84e
jg 0x4096b9
cmp eax, 0xc02aa3de
je 0x409af0
cmp eax, 0xc3c216ce
je 0x409b40
cmp eax, 0xc790f37e
jne 0x408f62
mov eax, dword [ebp - 0x18]
shr eax, 5
and eax, 0x1ffffff
lea ecx, [eax - 0xd6]
imul ecx, ecx
imul edx, ecx, 0x24a1
dec edx
add eax, 0xffffff57
mov dword [ebp - 0x18], eax
mov eax, 0x8410c221
cmp ecx, edx
je 0x40a342
mov eax, 0x524f7fc6
jmp 0x40a342
cmp eax, 0x229630b
jle 0x409442
cmp eax, 0xa87d952
jg 0x4096f7
cmp eax, 0x229630c
je 0x409b56
cmp eax, 0x6c7ffcc
je 0x409b7d
cmp eax, 0x6f32ba4
jne 0x408f62
imul eax, dword [ebp - 0x18], 0xad
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x15ad
add eax, 0xffffff2b
dec edx
mov dword [ebp - 0x18], eax
mov eax, 0x7c4f8091
cmp edx, ecx
jne 0x409a31
jmp 0x40a342
cmp eax, 0x84554dd0
jle 0x4094d8
cmp eax, 0x8a93974d
jg 0x409740
cmp eax, 0x84554dd1
je 0x409bcc
cmp eax, 0x86f9a22e
je 0x409bdb
cmp eax, 0x87978f14
jne 0x408f62
mov eax, dword [ebp - 0x14]
lea eax, [eax*4 - 0x4e00]
and eax, 0xffffff00
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0xe57461c3
jmp 0x408f62
cmp eax, 0x472e3cbf
jle 0x409519
cmp eax, 0x516304b8
jg 0x40977f
cmp eax, 0x472e3cc0
je 0x409bf4
cmp eax, 0x475d0cae
je 0x409c11
cmp eax, 0x4d3b7e04
jne 0x408f62
mov eax, dword [ebp - 0x14]
shl eax, 0x1c
lea eax, [eax + eax*2]
mov ecx, 0xfd8f2000
sub ecx, eax
mov dword [ebp - 0x14], ecx
call fcn.0040a360
jmp 0x4092f6
cmp eax, 0xe5444043
jg 0x4097d8
cmp eax, 0xe112a8d8
je 0x409c3b
cmp eax, 0xe2e8a630
je 0x409c67
cmp eax, 0xe38d4443
jne 0x408f62
mov dword [ebp - 0x10], 0x8410c221
jmp 0x408f62
cmp eax, 0x375c1a19
jg 0x40981d
cmp eax, 0x1f64fb16
je 0x409c84
cmp eax, 0x2e3110c5
je 0x409cb3
cmp eax, 0x3361bb01
jne 0x408f62
push dword [ebp - 0x34]
push dword [ebp - 0x20]
call edi
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x10], 0xe5444044
jmp 0x408f62
cmp eax, 0xb14b28f0
jg 0x40984a
cmp eax, 0xa7949b7e
je 0x409d01
cmp eax, 0xab04b21d
je 0x409d38
cmp eax, 0xaff9186a
jne 0x408f62
mov dword [ebp - 0x10], 0x398a740e
jmp 0x408f62
cmp eax, 0x7b829d7d
jg 0x4098a4
cmp eax, 0x719fe0ff
je 0x409d63
cmp eax, 0x79322a22
je 0x409d98
cmp eax, 0x7a18dbdd
jne 0x408f62
push eax
sub esp, 8
mov eax, esp
mov dword [ebp - 0x30], eax
sub esp, 0x14
mov eax, esp
mov dword [ebp - 0x34], eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x38], eax
sub esp, 0x22c
mov eax, esp
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 0xe38d4443
jmp 0x408f62
cmp eax, 0xba19f149
jle 0x4098da
cmp eax, 0xba19f14a
je 0x409da4
cmp eax, 0xbd4ff6ac
je 0x409dfa
cmp eax, 0xbde0d5d0
jne 0x408f62
mov eax, dword [ebp - 0x18]
mov ecx, 0xffffff79
add eax, ecx
imul ecx, eax, 0x2700
imul eax, eax
imul edx, eax, 0x645d
dec edx
add ecx, 0xffffff0c
mov dword [ebp - 0x18], ecx
mov ecx, 0x2e3110c5
cmp edx, eax
je 0x40a043
mov ecx, 0xc7e3c84f
jmp 0x40a043
cmp eax, 0xf44ecfb1
jle 0x4098fc
cmp eax, 0xf44ecfb2
je 0x409e1c
cmp eax, 0xf59aa411
je 0x409e5c
cmp eax, 0xf884d28d
jne 0x408f62
push eax
sub esp, 0xc
mov ebx, esp
mov byte [ebx + 0xf], 0
mov esi, 0xf
push esi
push 0x471180
push ebx
call fcn.00443950
add esp, 0xc
push 5
push 0x47118f
push esi
push ebx
call fcn.0040a730
add esp, 0x10
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebx + 0xc]
mov dword [eax + 0xc], ecx
mov ecx, dword [ebx + 8]
mov dword [eax + 8], ecx
mov ecx, dword [ebx]
mov edx, dword [ebx + 4]
mov dword [eax + 4], edx
mov dword [eax], ecx
push dword [ebp - 0x28]
push dword [ebp - 0x20]
call edi
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x2c]
sub esp, 0x10
mov eax, esp
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x10], 0x6f32ba4
jmp 0x408f62
cmp eax, 0x826ee42c
jle 0x409927
cmp eax, 0x826ee42d
je 0x409e71
cmp eax, 0x83fc6d78
je 0x409e8d
cmp eax, 0x8410c221
jne 0x408f62
push eax
sub esp, 0x18
mov eax, esp
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x10], 0x444b1400
jmp 0x408f62
cmp eax, 0x427e6b9b
jle 0x40995c
cmp eax, 0x427e6b9c
je 0x409f03
cmp eax, 0x444b1400
je 0x409f0f
cmp eax, 0x44c10536
jne 0x408f62
cmp dword [ebp - 0x78], 0
mov eax, 0x5616715c
je 0x40a342
mov eax, 0xb3955f7b
jmp 0x40a342
cmp eax, 0xd914716f
je 0x409f3a
cmp eax, 0xd9df720d
je 0x409f46
cmp eax, 0xdea971bc
jne 0x408f62
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [eax + 4], ecx
mov dword [eax], edx
push dword [ebp - 0x38]
push dword [ebp - 0x20]
call edi
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x5c]
push 0
push 0xf
call eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x10], 0xa0519cc0
jmp 0x408f62
cmp eax, 0x164f71a1
je 0x409f64
cmp eax, 0x1adb96c9
je 0x409f70
cmp eax, 0x1b9c2852
jne 0x408f62
imul eax, dword [ebp - 0x18], 0xb3
lea ecx, [eax + 0x4486]
imul ecx, ecx
imul edx, ecx, 0x44f3
add eax, 0x4370
dec edx
mov dword [ebp - 0x18], eax
mov eax, 0x8c9a7c36
cmp ecx, edx
je 0x40a342
mov eax, 0xc02aa3de
jmp 0x40a342
cmp eax, 0x9dfccdd7
je 0x409fc5
cmp eax, 0xa0519cc0
je 0x409ffd
cmp eax, 0xa520232e
jne 0x408f62
imul ecx, dword [ebp - 0x14], 0x3c
add ecx, 0xffffdd28
shr ecx, 0x1c
mov dword [ebp - 0x14], ecx
mov eax, 0xd9df720d
cmp ecx, 8
je 0x40a342
mov eax, 0x398a740e
jmp 0x40a342
cmp eax, 0x630b484b
je 0x40a00c
cmp eax, 0x6d1dd2ca
je 0x40a018
cmp eax, 0x6f4f0b35
jne 0x408f62
mov ecx, dword [ebp - 0x18]
imul eax, ecx, 0xa5
imul ecx, ecx, 0x9966
imul eax, eax
shr ecx, 0xc
imul edx, eax, 0x1727
mov ebx, ecx
shl ebx, 6
add ebx, ecx
dec edx
shr ebx, 0xd
mov dword [ebp - 0x18], ebx
mov ecx, 0x7f31619f
cmp edx, eax
je 0x40a043
mov ecx, 0xd05b7f21
jmp 0x40a043
cmp eax, 0xc7e3c84f
je 0x40a04b
cmp eax, 0xcaa99b05
je 0x40a057
cmp eax, 0xce7ace38
jne 0x408f62
mov eax, dword [ebp - 0x58]
push dword [ebp - 0x50]
call eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x10], 0xd562ff25
jmp 0x408f62
cmp eax, 0xa87d953
je 0x40a07e
cmp eax, 0xcb0fbf0
je 0x40a091
cmp eax, 0xe67f83a
jne 0x408f62
mov eax, dword [ebp - 0x14]
shr eax, 0xf
add eax, 0xaf
mov dword [ebp - 0x14], eax
push eax
call fcn.00408f4c
add esp, 4
call fcn.0040a360
mov dword [ebp - 0x10], 0x1adb96c9
jmp 0x408f62
cmp eax, 0x8a93974e
je 0x40a0a9
cmp eax, 0x8c9a7c36
je 0x40a0df
cmp eax, 0x8eaab81d
jne 0x408f62
push 0x18
push 0x465510
push dword [ebp - 0x3c]
call fcn.00443950
add esp, 0xc
mov dword [ebp - 0x10], 0xc790f37e
jmp 0x408f62
cmp eax, 0x516304b9
je 0x40a0f4
cmp eax, 0x524f7fc6
je 0x40a125
cmp eax, 0x5616715c
jne 0x408f62
mov eax, dword [ebp - 0x18]
imul ecx, eax, 0xa5
imul ecx, ecx
imul edx, ecx, 0x45c5
dec edx
imul eax, eax, 0x861
add eax, 0x319
mov dword [ebp - 0x18], eax
mov eax, 0x9dfccdd7
cmp ecx, edx
je 0x40a342
mov eax, 0x472e3cc0
jmp 0x40a342
cmp eax, 0xe5444044
je 0x40a154
cmp eax, 0xe57461c3
je 0x40a160
cmp eax, 0xeb1fd2bb
jne 0x408f62
imul eax, dword [ebp - 0x14], 0xad
add eax, 0xfffffe8d
mov dword [ebp - 0x14], eax
push eax
call fcn.00408f4c
add esp, 4
mov dword [ebp - 0x10], 0xd914716f
jmp 0x408f62
cmp eax, 0x375c1a1a
je 0x40a175
cmp eax, 0x398a740e
je 0x40a1a8
cmp eax, 0x3d690808
jne 0x408f62
mov dword [ebp - 0x10], 0xce7ace38
jmp 0x408f62
cmp eax, 0xb14b28f1
je 0x40a1c5
cmp eax, 0xb218a53a
je 0x40a1eb
cmp eax, 0xb3955f7b
jne 0x408f62
mov eax, dword [ebp - 0x18]
mov ecx, 0x117
add eax, ecx
mov ecx, eax
shr ecx, 0xb
imul eax, eax
imul edx, eax, 0x208f
dec edx
add ecx, 0xffffff54
mov dword [ebp - 0x18], ecx
mov ecx, 0xb14b28f1
cmp eax, edx
je 0x40a043
mov ecx, 0xb6a34bc2
jmp 0x40a043
cmp eax, 0x7f31619f
je 0x40a209
cmp eax, 0x7c4f8091
je 0x40a274
cmp eax, 0x7b829d7e
jne 0x408f62
push eax
sub esp, 0x18
mov eax, esp
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x10], 0xe2e8a630
jmp 0x408f62
cmp eax, 0xb48e79f6
je 0x40a299
cmp eax, 0xb6a34bc2
jne 0x40a34a
mov dword [ebp - 0x10], 0x427e6b9c
jmp 0x408f62
cmp eax, 0xede0b7b1
je 0x40a2e4
cmp eax, 0xf0558411
jne 0x408f62
push eax
sub esp, 8
mov eax, esp
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x10], 0x6c7ffcc
jmp 0x408f62
cmp eax, 0x80002f72
je 0x40a2f3
cmp eax, 0x81e12f62
jne 0x408f62
mov eax, dword [ebp - 0x18]
shl eax, 8
add eax, 0x350
and eax, 0x3ff50
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x3d690808
jmp 0x408f62
cmp eax, 0x41e179c3
je 0x40a31c
cmp eax, 0x425df280
jne 0x408f62
mov ebx, dword [ebp - 0x14]
shl ebx, 4
and ebx, 0x3fffff0
mov dword [ebp - 0x14], ebx
push 0x1b45
push ebx
push 0x2143
push 0x16b0
call fcn.0040a600
add esp, 0x10
mov eax, 0x8410c221
cmp ebx, 0x46
jb 0x40a2dd
jmp 0x40a342
mov dword [ebp - 0x10], 0xaff9186a
jmp 0x408f62
mov eax, dword [ebp - 0x18]
shl eax, 0x12
or eax, 0x19c0
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xf59aa411
jmp 0x408f62
mov dword [ebp - 0x10], 0xede0b7b1
jmp 0x408f62
mov eax, dword [ebp - 0x14]
shr eax, 2
imul ebx, eax, 0xec0
add ebx, 0x158d68
mov dword [ebp - 0x14], ebx
push 0x21cb
push 0x1fd1
push ebx
push 0x2445
call fcn.0040a600
add esp, 0x10
push ebx
push 0x25f2
push 0x2cdf
push 0x60a7
call fcn.0040a600
add esp, 0x10
mov eax, 0x524f7fc6
cmp ebx, 0x47
jae 0x40a342
mov eax, 0xd914716f
jmp 0x40a342
mov ebx, dword [ebp - 0x14]
mov eax, 0x9e
add ebx, eax
shr ebx, 7
and ebx, 0xfffffff0
lea esi, [ebx - 0xa9]
mov dword [ebp - 0x14], esi
push esi
call fcn.00408f4c
add esp, 4
push esi
call fcn.00408f4c
add esp, 4
mov eax, 0x8410c221
cmp ebx, 0x11f
jb 0x40a33d
jmp 0x40a342
mov eax, dword [ebp - 0x18]
shl eax, 5
and eax, 0xffffe0
add eax, 0x47
shr eax, 0xd
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xb6a34bc2
jmp 0x408f62
mov eax, dword [ebp - 0x18]
shl eax, 7
add eax, 0xf9
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xb218a53a
jmp 0x408f62
imul eax, dword [ebp - 0x18], 0xbf
add eax, 0xffffff5c
mov ecx, eax
imul ecx, eax
shl eax, 0x17
imul edx, ecx, 0x7477
dec edx
or eax, 0xb2
mov dword [ebp - 0x18], eax
mov eax, 0x398a740e
cmp edx, ecx
je 0x40a342
mov eax, 0xd05b7f21
jmp 0x40a342
mov esi, 0x18
push esi
push 0x471160
push dword [ebp - 0x40]
call fcn.00443950
add esp, 0xc
push 8
push 0x471178
push esi
push dword [ebp - 0x40]
call fcn.0040a730
add esp, 0x10
push 0x19
push dword [ebp - 0x40]
push dword [ebp - 0x24]
call fcn.00443950
add esp, 0xc
push dword [ebp - 0x24]
push dword [ebp - 0x20]
call edi
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x10], 0x1f64fb16
jmp 0x408f62
imul eax, dword [ebp - 0x18], 0x3c
add eax, 0xffffffef
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xe57461c3
jmp 0x408f62
mov ecx, dword [ebp - 0x14]
shl ecx, 4
add ecx, 0x8f1
mov dword [ebp - 0x14], ecx
mov eax, 0xc02aa3de
cmp ecx, 0x51
je 0x40a342
mov eax, 0xab04b21d
jmp 0x40a342
mov eax, dword [ebp - 0x4c]
mov byte [eax + 0xb], 0
mov eax, dword [ebp - 0x4c]
mov cl, byte [0x4711dd]
mov byte [eax + 0xa], cl
movzx ecx, word [0x4711db]
mov word [eax + 8], cx
mov ecx, dword [0x4711d7]
mov dword [eax + 4], ecx
mov ecx, dword [0x4711d3]
mov dword [eax], ecx
push 8
push 0x4711de
push 0xb
push dword [ebp - 0x4c]
call fcn.0040a730
add esp, 0x10
mov dword [ebp - 0x10], 0xdea971bc
jmp 0x408f62
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x10], 0xf884d28d
jmp 0x408f62
cmp dword [ebp - 0x54], 0
mov eax, 0x959ee4ba
je 0x40a342
mov eax, 0x58d7c070
jmp 0x40a342
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x68]
push dword [eax]
push 0
push 1
call ecx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x10], 0x86f9a22e
jmp 0x408f62
imul ecx, dword [ebp - 0x14], 0x6200
mov eax, ecx
shr eax, 7
mov dword [ebp - 0x14], eax
mov eax, 0x83fc6d78
cmp ecx, 0x5781
jae 0x40a342
mov eax, 0xe57461c3
jmp 0x40a342
imul ebx, dword [ebp - 0x14], 0x1353
add ebx, 0xffffcf31
mov dword [ebp - 0x14], ebx
push ebx
call fcn.00408f4c
add esp, 4
mov eax, 0x425df280
cmp ebx, 9
jne 0x40a33d
jmp 0x40a342
push eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x28], eax
sub esp, 0x10
mov eax, esp
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 0x41e179c3
jmp 0x408f62
mov eax, dword [ebp - 0x18]
lea eax, [eax + eax*2]
shr eax, 0x16
mov dword [ebp - 0x18], eax
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x5f31
dec edx
mov eax, 0x15fa78a4
cmp edx, ecx
je 0x40a342
mov eax, 0x84554dd1
jmp 0x40a342
mov eax, dword [ebp - 0x14]
lea ebx, [eax + eax*2]
shl ebx, 0x1c
add ebx, 0xfffffd98
mov dword [ebp - 0x14], ebx
push ebx
push 0x3ec4
push 0x5f9f
push 0x3a43
call fcn.0040a600
add esp, 0x10
push 0x1069
push 0x5b25
push ebx
push 0x482c
call fcn.0040a600
add esp, 0x10
mov dword [ebp - 0x10], 0xd914716f
jmp 0x408f62
mov eax, dword [ebp - 0x18]
mov ecx, 0xfffffee4
add eax, ecx
imul ecx, eax, 0x85
imul eax, eax
imul edx, eax, 0x4069
dec edx
shr ecx, 5
mov dword [ebp - 0x18], ecx
mov ecx, 0x8410c221
cmp eax, edx
je 0x40a043
mov ecx, 0x3d690808
jmp 0x40a043
mov eax, dword [ebp - 0x1c]
mov dword [eax], 0x22c
mov eax, dword [ebp - 0x60]
push dword [ebp - 0x1c]
push dword [ebp - 0x50]
call eax
mov ecx, 0x81e12f62
test eax, eax
je 0x40a043
mov ecx, 0xbde0d5d0
jmp 0x40a043
mov ecx, dword [ebp - 0x18]
mov eax, ecx
shr eax, 0xe
imul eax, eax
imul edx, eax, 0x381
shr ecx, 0x12
and ecx, 0xfffffff0
dec edx
add ecx, 0xffffffac
mov dword [ebp - 0x18], ecx
mov ecx, 0x9ddfb641
cmp eax, edx
je 0x40a043
mov ecx, 0x11f24231
jmp 0x40a043
mov dword [ebp - 0x10], 0x826ee42d
jmp 0x408f62
mov eax, dword [ebp - 0x48]
mov ecx, dword [0x4711c7]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x4711c3]
mov dword [eax + 8], ecx
mov ecx, dword [0x4711bf]
mov dword [eax + 4], ecx
mov ecx, dword [0x4711bb]
mov dword [eax], ecx
push 8
push 0x4711cb
push 0x10
push dword [ebp - 0x48]
call fcn.0040a730
add esp, 0x10
push 0x11
push dword [ebp - 0x48]
push dword [ebp - 0x34]
call fcn.00443950
add esp, 0xc
mov dword [ebp - 0x10], 0x3361bb01
jmp 0x408f62
mov eax, dword [ebp - 0x64]
push dword [ebp - 0x1c]
push dword [ebp - 0x50]
call eax
mov ecx, 0xa7949b7e
test eax, eax
je 0x40a043
mov ecx, 0x5c26d242
jmp 0x40a043
imul ebx, dword [ebp - 0x14], 0xe6
add ebx, 0xfffffec7
mov dword [ebp - 0x14], ebx
push 0xed1
push 0x44b5
push 0x4b0
push ebx
call fcn.0040a730
add esp, 0x10
call fcn.0040a360
mov eax, 0xe2e8a630
cmp ebx, 0x47
jae 0x40a315
jmp 0x40a342
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x10], 0xb3ca34d2
jmp 0x408f62
push eax
sub esp, 0x10
mov eax, esp
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
mov byte [eax + 0x10], 0
mov dword [ebp - 0x10], 0xba19f14a
jmp 0x408f62
mov eax, dword [ebp - 0x44]
mov byte [eax + 0xe], 0
mov eax, dword [ebp - 0x44]
movzx ecx, word [0x4711a0]
mov word [eax + 0xc], cx
mov ecx, dword [0x47119c]
mov dword [eax + 8], ecx
mov ecx, dword [0x471198]
mov dword [eax + 4], ecx
mov ecx, dword [0x471194]
mov dword [eax], ecx
push 7
push 0x4711a2
push 0xe
push dword [ebp - 0x44]
call fcn.0040a730
add esp, 0x10
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x44]
mov edx, dword [ecx + 0xb]
mov dword [eax + 0xb], edx
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [eax + 4], ecx
mov dword [eax], edx
push dword [ebp - 0x2c]
push dword [ebp - 0x20]
call edi
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x10], 0x719fe0ff
jmp 0x408f62
mov dword [ebp - 0x10], 0xbd4ff6ac
jmp 0x408f62
mov eax, dword [ebp - 0x18]
mov ecx, 0xfffffeb0
add eax, ecx
mov dword [ebp - 0x18], eax
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x657d
dec edx
mov eax, 0x4d3b7e04
cmp ecx, edx
jne 0x40a0d5
jmp 0x40a342
mov dword [ebp - 0x10], 0x375c1a1a
jmp 0x408f62
mov eax, dword [ebp - 0x1c]
add eax, 0x24
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x1c]
add eax, 8
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x10], 0x6f4f0b35
jmp 0x408f62
mov dword [ebp - 0x10], 0x8c9a7c36
jmp 0x408f62
mov eax, dword [ebp - 0x14]
add eax, 0xffffffec
shr eax, 9
imul ebx, eax, 0xaa
mov dword [ebp - 0x14], ebx
push 0x14b0
push ebx
push 0x1558
push 0x48dd
call fcn.0040a730
add esp, 0x10
push ebx
push 0x45a9
push 0x5e84
push 0x4cb6
call fcn.0040a600
add esp, 0x10
mov eax, 0x630b484b
cmp ebx, 0x6f
jae 0x40a33d
jmp 0x40a342
mov eax, dword [ebp - 0x14]
shr eax, 0xc
add eax, 0x28
shr eax, 1
imul esi, eax, 0x2b
add esi, 0xfffffe0d
mov dword [ebp - 0x14], esi
push esi
call fcn.00408f4c
add esp, 4
mov eax, 0xe57461c3
cmp esi, 0x6a
je 0x40a342
mov eax, 0x475d0cae
jmp 0x40a342
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x10], 0xab04b21d
jmp 0x408f62
mov dword [ebp - 0x10], 0xc3c216ce
jmp 0x408f62
mov ecx, dword [ebp - 0x18]
mov eax, ecx
shr eax, 1
shr ecx, 0x13
imul eax, eax
imul edx, eax, 0x6915
dec edx
add ecx, 0x9d
mov dword [ebp - 0x18], ecx
mov ecx, 0x630b484b
cmp eax, edx
je 0x40a043
mov ecx, 0x164f71a1
mov dword [ebp - 0x10], ecx
jmp 0x408f62
mov dword [ebp - 0x10], 0xd9df720d
jmp 0x408f62
mov eax, dword [ebp - 0x14]
lea esi, [eax + eax]
add esi, 0xffffffd6
mov dword [ebp - 0x14], esi
call fcn.0040a360
mov eax, 0x6c7ffcc
cmp esi, 0xfe
jae 0x40a315
jmp 0x40a342
mov eax, dword [ebp - 0x40]
mov byte [eax + 0x18], 0
mov dword [ebp - 0x10], 0x1b9c2852
jmp 0x408f62
imul eax, dword [ebp - 0x14], 0x56
add eax, 0x2a7f
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x524f7fc6
jmp 0x408f62
imul eax, dword [ebp - 0x14], 0x2f
shr eax, 0xc
imul eax, eax, 0xe8
add eax, 0xa0
shr eax, 0xc
imul ecx, eax, 0xbc
mov dword [ebp - 0x14], ecx
mov eax, 0xdea971bc
cmp ecx, 0x5c
jb 0x40a342
mov eax, 0x630b484b
jmp 0x40a342
push eax
sub esp, 0x18
mov eax, esp
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x10], 0xa87d953
jmp 0x408f62
imul esi, dword [ebp - 0x14], 0x258
add esi, 0x16
mov dword [ebp - 0x14], esi
push esi
call fcn.00408f4c
add esp, 4
mov eax, 0x826ee42d
cmp esi, 0xe2
jb 0x40a342
mov eax, 0x8410c221
jmp 0x40a342
push 6
push 0x465528
push 0xc
push dword [ebp - 0x3c]
call fcn.0040a600
add esp, 0x10
push dword [ebp - 0x3c]
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x10], 0x6d1dd2ca
jmp 0x408f62
mov dword [ebp - 0x10], 0xf0558411
jmp 0x408f62
mov eax, dword [ebp - 0x3c]
mov word [eax + 0x18], 0
mov dword [ebp - 0x10], 0x8eaab81d
jmp 0x408f62
mov eax, dword [ebp - 0x18]
mov ecx, 0xffffff7b
add eax, ecx
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x5619
shl eax, 0xc
dec edx
mov dword [ebp - 0x18], eax
mov eax, 0xe2e8a630
cmp ecx, edx
je 0x40a342
mov eax, 0x83fc6d78
jmp 0x40a342
push dword [ebp + 8]
push dword [ebp - 0x70]
call fcn.0045301a
add esp, 8
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x10], 0x44c10536
jmp 0x408f62
mov ecx, dword [ebp - 0x14]
mov eax, ecx
shr eax, 0x19
mov dword [ebp - 0x14], eax
mov eax, 0xcb0fbf0
cmp ecx, 0xd8000000
jae 0x40a342
mov eax, 0x80002f72
jmp 0x40a342
mov eax, dword [ebp - 0x6c]
push 0
push dword [ebp - 0x54]
call eax
mov eax, dword [ebp - 0x58]
push dword [ebp - 0x54]
call eax
mov dword [ebp - 0x10], 0xb6a34bc2
jmp 0x408f62
push eax
sub esp, 8
mov ebx, esp
mov byte [ebx + 0xb], 0
mov al, byte [0x4711b3]
mov byte [ebx + 0xa], al
movzx eax, word [0x4711b1]
mov word [ebx + 8], ax
mov eax, dword [0x4711ad]
mov dword [ebx + 4], eax
mov eax, dword [0x4711a9]
mov dword [ebx], eax
push 7
push 0x4711b4
push 0xb
push ebx
call fcn.0040a730
add esp, 0x10
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebx + 8]
mov dword [eax + 8], ecx
mov ecx, dword [ebx]
mov edx, dword [ebx + 4]
mov dword [eax + 4], edx
mov dword [eax], ecx
push dword [ebp - 0x30]
push dword [ebp - 0x20]
call edi
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x10], 0x79322a22
jmp 0x408f62
mov eax, dword [ebp - 0x14]
shr eax, 9
imul eax, eax, 0x7a
add eax, 0x3a24
shr eax, 3
add eax, 0xe1
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x8eaab81d
jmp 0x408f62
mov eax, dword [ebp - 0x14]
lea ebx, [eax + eax]
inc ebx
mov dword [ebp - 0x14], ebx
push ebx
push 0x1e8c
push 0x1c73
push 0x6290
call fcn.0040a600
add esp, 0x10
push 0x199f
push ebx
push 0x5783
push 0x4523
call fcn.0040a600
add esp, 0x10
mov eax, 0x94fbdada
cmp ebx, 0x47
jge 0x40a342
mov eax, 0xe2e8a630
jmp 0x40a342
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x10], 0x7f31619f
jmp 0x408f62
imul ecx, dword [ebp - 0x14], 0x380000
add ecx, 0xffffc950
mov eax, ecx
shr eax, 0xc
mov dword [ebp - 0x14], eax
mov eax, 0x516304b9
cmp ecx, 0xa3000
jb 0x40a342
mov eax, 0x8eaab81d
jmp 0x40a342
mov eax, dword [ebp - 0x18]
shr eax, 5
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0xb2f
dec edx
add eax, 0xffffffb8
mov dword [ebp - 0x18], eax
mov eax, 0xe2e8a630
cmp edx, ecx
je 0x40a342
mov eax, 0x7a18dbdd
mov dword [ebp - 0x10], eax
jmp 0x408f62
cmp eax, 0xb3ca34d2
jne 0x408f62
mov eax, dword [ebp - 0x24]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret