Function at 0x40376a
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x28
mov dword [ebp - 0x10], 0xb25fbf31
mov eax, dword [ebp - 0x10]
cmp eax, 0xdfa1fe2
jg 0x4037d7
cmp eax, 0xb25fbf30
jle 0x403825
cmp eax, 0xf7d1679b
jg 0x4038e1
cmp eax, 0xd0a3fdd9
jg 0x403a2d
cmp eax, 0xbac770de
jg 0x403c63
cmp eax, 0xb25fbf31
je 0x403fc4
cmp eax, 0xb9b28cd3
jne 0x40377a
push dword [ebp - 0x1c]
push dword [ebp - 0x28]
call dword [0x46f0e4]
mov dword [ebp - 0x10], 0xbac770df
jmp 0x40377a
cmp eax, 0x42632220
jle 0x40388f
cmp eax, 0x608dd842
jle 0x403920
cmp eax, 0x6c80aec5
jg 0x403a7d
cmp eax, 0x6431e5e3
jg 0x403ca8
cmp eax, 0x608dd843
je 0x403fe2
cmp eax, 0x63f8d168
jne 0x40377a
mov dword [ebp - 0x10], 0xb9b28cd3
jmp 0x40377a
cmp eax, 0x94080bdc
jle 0x40397c
cmp eax, 0xa05e51b1
jg 0x403ac8
cmp eax, 0x98b17f5c
jg 0x403cca
cmp eax, 0x94080bdd
je 0x40400f
cmp eax, 0x973fe16f
jne 0x40377a
mov esi, dword [ebp - 0x14]
shl esi, 7
add esi, 0x4800
mov dword [ebp - 0x14], esi
push esi
call fcn.00401d2c
add esp, 4
call fcn.0040376a
mov eax, 0x133c5100
cmp esi, 0x86
jb 0x4041f9
jmp 0x4042da
cmp eax, 0x179d61d3
jle 0x4039e6
cmp eax, 0x36cc4fdb
jg 0x403aee
cmp eax, 0x1f27dd65
jg 0x403cf4
cmp eax, 0x179d61d4
je 0x404027
cmp eax, 0x19e68d48
jne 0x40377a
mov eax, dword [ebp - 0x1c]
cmp dword [eax], 8
mov eax, 0x787a861f
je 0x4042da
mov eax, 0x15e1b3c1
jmp 0x4042da
cmp eax, 0xa8ab83
jg 0x403b3b
cmp eax, 0xfb65def9
jg 0x403d22
cmp eax, 0xf7d1679c
je 0x404033
cmp eax, 0xf849d58e
jne 0x40377a
mov dword [ebp - 0x18], 0xffffff92
mov dword [ebp - 0x10], 0x6c80aec6
jmp 0x40377a
cmp eax, 0x4b9d73dd
jg 0x403b76
cmp eax, 0x494ee749
jg 0x403d56
cmp eax, 0x42632221
je 0x404067
cmp eax, 0x46f20693
jne 0x40377a
mov eax, dword [ebp - 0x18]
add eax, 7
shr eax, 7
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x63d7
add eax, 0xffffffac
dec edx
shr eax, 8
mov dword [ebp - 0x18], eax
mov eax, 0x76f21fc2
cmp ecx, edx
jne 0x40414f
jmp 0x4042da
cmp eax, 0x8f7f09c5
jle 0x403bd2
cmp eax, 0x90034e91
jg 0x403d9b
cmp eax, 0x8f7f09c6
je 0x40408c
cmp eax, 0x8fc7fa38
jne 0x40377a
mov eax, dword [ebp - 0x14]
shl eax, 4
add eax, 0x53d
shr eax, 5
imul esi, eax, 0xca
add esi, 0xffffe13a
mov dword [ebp - 0x14], esi
push esi
call fcn.00403730
add esp, 4
call fcn.0040376a
mov eax, 0xb9b28cd3
cmp esi, 0x50
jae 0x403c9e
jmp 0x4042da
cmp eax, 0x1543b6e5
jle 0x403c21
cmp eax, 0x15e1b3c0
jg 0x403dd2
cmp eax, 0x1543b6e6
je 0x404098
cmp eax, 0x1570fd87
jne 0x40377a
mov cl, byte [ebp - 0x1d]
mov eax, 0xa7fd0909
cmp cl, 0xcc
je 0x4042da
mov eax, 0x8d83f834
jmp 0x4042da
cmp eax, 0xe0d91383
jg 0x403e1a
cmp eax, 0xd0a3fdda
je 0x4040b6
cmp eax, 0xd8cf46bb
jne 0x40377a
mov esi, dword [ebp - 0x14]
mov eax, esi
shr eax, 0xf
add eax, 0xffffff5c
mov dword [ebp - 0x14], eax
push eax
call fcn.00403730
add esp, 4
mov eax, 0xb9b28cd3
cmp esi, 0x528000
jb 0x403b31
jmp 0x4042da
cmp eax, 0x76f21fc1
jg 0x403e54
cmp eax, 0x6c80aec6
je 0x4040eb
cmp eax, 0x6f69911b
jne 0x40377a
mov eax, dword [ebp - 0x14]
lea esi, [eax*8 + 0xb7]
mov dword [ebp - 0x14], esi
call fcn.00402df9
mov eax, 0x973fe16f
cmp esi, 0x6f
jge 0x4042da
mov eax, 0xa05e51b2
jmp 0x4042da
cmp eax, 0xb079328f
jg 0x403ea3
cmp eax, 0xa05e51b2
je 0x4040f7
cmp eax, 0xa7fd0909
je 0x403c12
jmp 0x40377a
cmp eax, 0x3e6457f5
jg 0x403ece
cmp eax, 0x36cc4fdc
je 0x40412f
cmp eax, 0x3a6b3455
jne 0x40377a
mov ecx, dword [ebp - 0x14]
add ecx, 0x32
mov eax, ecx
shr eax, 0xd
add eax, 0x22
mov dword [ebp - 0x14], eax
mov eax, 0x2ac4fa30
cmp ecx, 0x156000
jb 0x4042da
mov eax, 0x3e6457f6
jmp 0x4042da
cmp eax, 0x2244db5
jg 0x403f1e
cmp eax, 0xa8ab84
je 0x40413e
cmp eax, 0x18b14e7
jne 0x40377a
push dword [ebp - 0x28]
call fcn.00403730
add esp, 4
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x10], 0xfd01bcf1
jmp 0x40377a
cmp eax, 0x4df3c49b
jle 0x403f99
cmp eax, 0x4df3c49c
je 0x404159
cmp eax, 0x526053db
jne 0x40377a
mov eax, dword [ebp - 0x14]
shr eax, 0xd
imul esi, eax, 0x218c
add esi, 0x26d8
mov dword [ebp - 0x14], esi
call fcn.0040318b
push esi
call fcn.00401d2c
add esp, 4
mov eax, 0x19e68d48
cmp esi, 0x51
jl 0x4042da
mov eax, 0x42632221
jmp 0x4042da
cmp eax, 0x8104ee00
je 0x40416b
cmp eax, 0x87a641b7
je 0x403f67
cmp eax, 0x8d83f834
jne 0x40377a
mov eax, dword [ebp - 0x2c]
movzx eax, word [eax]
cmp eax, 0xf0b
je 0x403f67
movzx eax, ax
cmp eax, 0xcd03
jne 0x4043ac
popal
jmp 0x403c13
cmp eax, 0xdfa1fe3
je 0x40419b
cmp eax, 0x133c5100
je 0x4041d3
cmp eax, 0x1361c686
jne 0x40377a
mov ecx, dword [ebp - 0x14]
add ecx, 0xffffffaf
mov dword [ebp - 0x14], ecx
mov eax, 0x19e68d48
cmp ecx, 0x1d
jae 0x4042da
mov eax, 0xb9b28cd3
jmp 0x4042da
cmp eax, 0xbac770df
je 0x404203
cmp eax, 0xcf4b1caa
jne 0x40377a
mov esi, dword [ebp - 0x14]
shl esi, 0xe
or esi, 0xde
mov dword [ebp - 0x14], esi
call fcn.00402df9
mov eax, 0x3e6457f6
cmp esi, 0xbb
jl 0x4042da
mov eax, 0xa8ab84
jmp 0x4042da
cmp eax, 0x6431e5e4
je 0x404219
cmp eax, 0x65302afa
jne 0x40377a
mov dword [ebp - 0x10], 0x63f8d168
jmp 0x40377a
cmp eax, 0x98b17f5d
je 0x404251
cmp eax, 0x9b1f5f10
jne 0x40377a
mov eax, dword [ebp - 0x2c]
mov al, byte [eax]
mov byte [ebp - 0x1d], al
mov dword [ebp - 0x10], 0x588b71d
jmp 0x40377a
cmp eax, 0x1f27dd66
je 0x404268
cmp eax, 0x2ac4fa30
jne 0x40377a
push dword [ebp - 0x1c]
push dword [ebp - 0x24]
call dword [0x46f230]
mov dword [ebp - 0x10], 0x19e68d48
jmp 0x40377a
cmp eax, 0xfb65defa
je 0x404277
cmp eax, 0xfd01bcf1
jne 0x40377a
mov eax, dword [ebp - 0x18]
shl eax, 7
add eax, 0xffffffcc
shr eax, 2
and eax, 0xfffffff0
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x1543b6e6
jmp 0x40377a
cmp eax, 0x494ee74a
je 0x404290
cmp eax, 0x4a27c5c0
jne 0x40377a
mov eax, dword [ebp - 0x14]
lea ecx, [eax*8 + 0x20]
mov eax, ecx
shr eax, 1
add eax, 0xb7
shr eax, 3
mov dword [ebp - 0x14], eax
mov eax, 0xcf4b1caa
cmp ecx, 0x242
jae 0x4042d5
jmp 0x4042da
cmp eax, 0x90034e92
je 0x4042b4
cmp eax, 0x939a16f4
jne 0x40377a
mov eax, dword [ebp - 0x18]
and eax, 0xfffffff0
shl eax, 5
imul eax, eax, 0x1d4
add eax, 0xffffffce
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x18b14e7
jmp 0x40377a
cmp eax, 0x15e1b3c1
je 0x4042e2
cmp eax, 0x1704eb0a
jne 0x40377a
mov eax, dword [ebp - 0x18]
lea ecx, [eax - 0xdd]
imul ecx, ecx
imul edx, ecx, 0x593f
dec edx
add eax, 0xdc
mov dword [ebp - 0x18], eax
mov eax, 0x2ac4fa30
cmp edx, ecx
je 0x4042da
mov eax, 0xb0793290
jmp 0x4042da
cmp eax, 0xe0d91384
je 0x404314
cmp eax, 0xed6600e5
jne 0x40377a
mov eax, dword [ebp - 0x14]
shr eax, 0x13
add eax, 0xf8
mov dword [ebp - 0x14], eax
call fcn.00402df9
call fcn.00402df9
mov dword [ebp - 0x10], 0x98b17f5d
jmp 0x40377a
cmp eax, 0x76f21fc2
je 0x404348
cmp eax, 0x787a861f
jne 0x40377a
mov ecx, dword [ebp - 0x18]
lea eax, [ecx + 0xec]
imul eax, eax
imul edx, eax, 0x6851
add ecx, 0x20
dec edx
shr ecx, 6
add ecx, 0xffffff20
mov dword [ebp - 0x18], ecx
mov ecx, 0x4b9d73de
cmp eax, edx
je 0x40430c
mov ecx, 0x3e6457f6
jmp 0x40430c
cmp eax, 0xb0793290
je 0x404366
cmp eax, 0xb1277613
jne 0x40377a
mov eax, dword [ebp - 0x1c]
mov dword [eax], 0xff
mov dword [ebp - 0x10], 0x8f7f09c6
jmp 0x40377a
cmp eax, 0x3e6457f6
je 0x404372
cmp eax, 0x3e91fb64
jne 0x40377a
imul eax, dword [ebp - 0x18], 0xf5
add eax, 0xd
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x5b4d
dec edx
and eax, 0xffffe000
add eax, eax
add eax, 0xffffffa0
mov dword [ebp - 0x18], eax
mov eax, 0xe0d91384
cmp ecx, edx
je 0x4042da
mov eax, 0xfb65defa
jmp 0x4042da
cmp eax, 0x2244db6
je 0x40438c
cmp eax, 0x588b71d
jne 0x40377a
mov eax, dword [ebp - 0x18]
shr eax, 7
imul ecx, eax, 0x39
imul eax, eax
imul edx, eax, 0x17fd
add ecx, 0x147c
dec edx
mov dword [ebp - 0x18], ecx
mov ecx, 0xb1277613
cmp edx, eax
je 0x40430c
mov ecx, 0x1570fd87
jmp 0x40430c
mov eax, dword [ebp - 0x18]
add eax, 0xffffffcc
mov ecx, eax
imul ecx, eax
shr eax, 0xb
imul edx, ecx, 0x7f25
dec edx
add eax, 0xffffffc9
mov dword [ebp - 0x18], eax
mov eax, 0x1570fd87
cmp ecx, edx
je 0x4042da
mov eax, 0xa7fd0909
jmp 0x4042da
cmp eax, 0x4b9d73de
jne 0x4043a1
mov eax, dword [ebp - 0x14]
shr eax, 6
add eax, 0x2b
shr eax, 4
add eax, 0x99
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x526053db
jmp 0x40377a
push eax
sub esp, 0x1fc
mov eax, esp
mov dword [ebp - 0x24], eax
push eax
mov eax, esp
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 0x76f21fc2
jmp 0x40377a
mov eax, dword [ebp - 0x14]
and eax, 0xfffffff0
lea ecx, [eax + eax]
add ecx, 0xffffff35
mov dword [ebp - 0x14], ecx
mov eax, 0xed6600e5
cmp ecx, 0xc4
jge 0x4042da
mov eax, 0x3a6b3455
jmp 0x4042da
imul eax, dword [ebp - 0x14], 0x5d
add eax, 0x2226
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x76f21fc2
jmp 0x40377a
mov dword [ebp - 0x10], 0x4df3c49c
jmp 0x40377a
mov esi, dword [ebp - 0x14]
mov eax, 0xffffff0b
add esi, eax
shr esi, 9
and esi, 0xfffffff0
lea eax, [esi - 0x9a]
mov dword [ebp - 0x14], eax
call fcn.004043bc
mov eax, 0x8fc7fa38
cmp esi, 0xc1
jae 0x404191
jmp 0x4042da
mov esi, dword [ebp - 0x14]
mov eax, 0xee
add esi, eax
mov dword [ebp - 0x14], esi
call fcn.00402df9
mov eax, 0xb1277613
cmp esi, 0x12
jl 0x4041f9
jmp 0x4042da
mov dword [ebp - 0x10], 0x2ac4fa30
jmp 0x40377a
mov ecx, dword [ebp - 0x34]
mov eax, 0x3e91fb64
cmp ecx, 0xb09406c7
je 0x4042da
mov eax, 0x46f20693
jmp 0x4042da
mov eax, dword [ebp - 0x18]
shr eax, 0x17
mov ecx, eax
shl ecx, 8
imul eax, eax
imul edx, eax, 0x787f
dec edx
or ecx, 0xfd
mov dword [ebp - 0x18], ecx
mov ecx, 0x94080bdd
cmp eax, edx
je 0x40430c
mov ecx, 0xb1277613
jmp 0x40430c
mov dword [ebp - 0x10], 0x2244db6
jmp 0x40377a
mov eax, dword [ebp - 0x14]
shr eax, 1
and eax, 0x7ffff000
imul esi, eax, 0xbd
mov dword [ebp - 0x14], esi
push esi
call fcn.00403730
add esp, 4
push esi
call fcn.00403730
add esp, 4
mov eax, 0x76f21fc2
cmp esi, 0x5b
jl 0x4041f9
jmp 0x4042da
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x10], 0x179d61d4
jmp 0x40377a
mov eax, dword [ebp - 0x1c]
cmp dword [eax], 7
mov eax, 0x939a16f4
je 0x4042da
mov eax, 0x36cc4fdc
jmp 0x4042da
mov eax, dword [ebp + 4]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 0x1704eb0a
jmp 0x40377a
mov eax, dword [ebp - 0x14]
shr eax, 2
imul ecx, eax, 0x6ca7a
add ecx, 0xfff9c523
mov dword [ebp - 0x14], ecx
mov eax, 0x4a27c5c0
cmp ecx, 0x81
jae 0x4042da
mov eax, 0x98b17f5d
jmp 0x4042da
mov eax, dword [ebp - 0x14]
shr eax, 5
and eax, 0xfffffff8
imul esi, eax, 0x753c
add esi, 0xd84c
mov dword [ebp - 0x14], esi
call fcn.0040376a
mov eax, 0xf7d1679c
cmp esi, 0x8b
jge 0x4042da
mov eax, 0x1361c686
jmp 0x4042da
imul esi, dword [ebp - 0x14], 0xe1
add esi, 0xffff9f3d
mov dword [ebp - 0x14], esi
call fcn.004043bc
mov eax, 0xb1277613
cmp esi, 0xdb
je 0x4042da
mov eax, 0x2ac4fa30
jmp 0x4042da
imul eax, dword [ebp - 0x18], 0x7e0000
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xa8ab84
jmp 0x40377a
mov eax, dword [ebp - 0x18]
shr eax, 2
lea ecx, [eax - 0x17]
imul ecx, ecx
add eax, 0xffffff9c
imul edx, ecx, 0x2c49
shr eax, 6
dec edx
add eax, 0xffffff68
mov dword [ebp - 0x18], eax
mov eax, 0x19e68d48
cmp ecx, edx
je 0x4042da
mov eax, 0x4bd69066
jmp 0x4042da
mov ecx, dword [ebp - 0x30]
mov eax, 0xf849d58e
cmp ecx, 0x56cf7626
je 0x4042da
mov eax, 0x179d61d4
jmp 0x4042da
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x10], 0x65302afa
jmp 0x40377a
push 0xb09406c7
call fcn.00401d2c
add esp, 4
mov dword [ebp - 0x10], 0x36cc4fdc
jmp 0x40377a
imul ecx, dword [ebp - 0x14], 0xe7
add ecx, 0xffff2038
mov dword [ebp - 0x14], ecx
mov eax, 0x90034e92
cmp ecx, 0x81
jl 0x4042da
mov eax, 0x19e68d48
jmp 0x4042da
mov eax, dword [ebp - 0x14]
shl eax, 5
and eax, 0x3fffffe0
imul ecx, eax, 0xc8
mov dword [ebp - 0x14], ecx
mov eax, 0x2ac4fa30
cmp ecx, 0xe6
jge 0x4042da
mov eax, 0x76f21fc2
mov dword [ebp - 0x10], eax
jmp 0x40377a
mov eax, dword [ebp - 0x18]
add eax, 0xffffff89
lea ecx, [eax + eax*4]
shl ecx, 4
imul eax, eax
imul edx, eax, 0x4c8b
dec edx
add ecx, 0x4b
mov dword [ebp - 0x18], ecx
mov ecx, 0x6f69911b
cmp eax, edx
je 0x40430c
mov ecx, 0x179d61d4
mov dword [ebp - 0x10], ecx
jmp 0x40377a
mov eax, dword [ebp - 0x14]
shl eax, 4
and eax, 0x3ffff0
imul esi, eax, 0xf6
add esi, 0x2670
mov dword [ebp - 0x14], esi
call fcn.004043bc
push esi
call fcn.00401d2c
add esp, 4
mov dword [ebp - 0x10], 0xd8cf46bb
jmp 0x40377a
push eax
sub esp, 0x1fc
mov eax, esp
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x10], 0xd0a3fdda
jmp 0x40377a
mov dword [ebp - 0x10], 0x9b1f5f10
jmp 0x40377a
push dword [ebp - 0x24]
call fcn.00403730
add esp, 4
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x10], 0x98b17f5d
jmp 0x40377a
mov eax, dword [ebp - 0x1c]
mov dword [eax], 0xff
mov dword [ebp - 0x10], 0x1f27dd66
jmp 0x40377a
cmp eax, 0x4bd69066
jne 0x40377a
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
xor eax, eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret