Function at 0x403076
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x224
mov dword [ebp - 0x10], 0x35ed8cbd
mov eax, dword [ebp - 0x10]
cmp eax, 0x1a47257a
jle 0x4030d7
cmp eax, 0x558f6da8
jle 0x40311e
cmp eax, 0x68e0ffc8
jg 0x4031aa
cmp eax, 0x60198ad5
jle 0x4032d3
cmp eax, 0x639e5b9d
jg 0x4034d6
cmp eax, 0x60198ad6
je 0x4036bc
cmp eax, 0x63018b29
je 0x403b24
jmp 0x403089
cmp eax, 0xc736bc2c
jg 0x40316e
cmp eax, 0xa5907253
jg 0x4031fa
cmp eax, 0x93ee3c51
jle 0x403300
cmp eax, 0xa1b074d7
jg 0x403511
cmp eax, 0x93ee3c52
je 0x4036d7
cmp eax, 0x9cd44504
je 0x403b3f
jmp 0x403089
cmp eax, 0x4aa05dd7
jg 0x403232
cmp eax, 0x27af8aac
jle 0x403356
cmp eax, 0x35ed8cbc
jg 0x403547
cmp eax, 0x27af8aad
je 0x403a4c
cmp eax, 0x31f0c7e9
jne 0x403089
push 0xb09406c7
call fcn.00401d2c
add esp, 4
mov dword [ebp - 0x10], 0xb46218c0
jmp 0x403089
cmp eax, 0xeb219f57
jg 0x403279
cmp eax, 0xcf3401e7
jle 0x403392
cmp eax, 0xd4c96c78
jg 0x403576
cmp eax, 0xcf3401e8
je 0x4036f0
cmp eax, 0xd01fdd6e
je 0x403769
jmp 0x403089
cmp eax, 0x719da387
jle 0x4033c7
cmp eax, 0x77545d13
jg 0x403591
cmp eax, 0x719da388
je 0x403714
cmp eax, 0x71ee24da
jne 0x403089
mov eax, dword [ebp - 0x14]
shr eax, 0xa
add eax, 0xb3
mov dword [ebp - 0x14], eax
call fcn.00403076
call fcn.0040281e
mov dword [ebp - 0x10], 0x68e0ffc9
jmp 0x403089
cmp eax, 0xba2a19b8
jle 0x4033fe
cmp eax, 0xc0a64bd9
jg 0x4035d9
cmp eax, 0xba2a19b9
je 0x403778
cmp eax, 0xbe3335e2
jne 0x403089
mov dword [ebp - 0x10], 0xcf3401e8
jmp 0x403089
cmp eax, 0x51a02b8b
jle 0x40343a
cmp eax, 0x54364c55
jg 0x403609
cmp eax, 0x51a02b8c
je 0x4037a5
cmp eax, 0x52749fac
jne 0x403089
mov eax, dword [ebp - 0x1c]
cmp dword [eax], 7
mov eax, 0xd4c96c79
je 0x403b0c
mov eax, 0x84c5c263
jmp 0x403b0c
cmp eax, 0xf7d0a49d
jle 0x40347f
cmp eax, 0x59f1d1e
jg 0x403653
cmp eax, 0xf7d0a49e
je 0x4037e1
cmp eax, 0xfaeeeab5
jne 0x403089
imul eax, dword [ebp - 0x14], 0x1f4
add eax, 0x9664
shr eax, 9
lea eax, [eax + eax*8]
lea eax, [eax + eax*2]
mov dword [ebp - 0x14], eax
call fcn.00402bf9
call fcn.00403bcc
mov dword [ebp - 0x10], 0xc69534d9
jmp 0x403089
cmp eax, 0x571ed5f1
jg 0x4036a2
cmp eax, 0x558f6da9
je 0x4037fd
cmp eax, 0x5632f778
jne 0x403089
mov dword [ebp - 0x10], 0xbe3335e2
jmp 0x403089
cmp eax, 0x84c5c263
je 0x403812
cmp eax, 0x852cc541
je 0x403848
cmp eax, 0x8d0c7b65
jne 0x403089
mov eax, dword [ebp - 0x14]
shr eax, 6
imul esi, eax, 0x86
mov dword [ebp - 0x14], esi
call fcn.00403076
push esi
call fcn.00401d2c
add esp, 4
mov eax, 0xf7d0a49e
cmp esi, 0x6a
je 0x403b0c
mov eax, 0x24bb473c
jmp 0x403b0c
cmp eax, 0x1a47257b
je 0x403866
cmp eax, 0x1b3be671
je 0x403898
cmp eax, 0x24bb473c
jne 0x403089
mov cl, byte [ebp - 0x1d]
mov eax, 0xd01fdd6e
cmp cl, 0xcc
je 0x403b0c
mov eax, 0x1a47257b
jmp 0x403b0c
cmp eax, 0xc736bc2d
je 0x4038d0
cmp eax, 0xc95dbb28
je 0x403901
cmp eax, 0xca2dd660
jne 0x403089
imul eax, dword [ebp - 0x14], 0x680
add eax, 0xfffff300
mov dword [ebp - 0x14], eax
jmp 0x403a4c
cmp eax, 0x68e0ffc9
je 0x403933
cmp eax, 0x6d30b425
je 0x403965
cmp eax, 0x710fb652
jne 0x403089
mov eax, dword [ebp - 0x1c]
cmp dword [eax], 8
mov eax, 0xa3449c5d
jne 0x403b07
jmp 0x403b0c
cmp eax, 0xa5907254
je 0x4039a5
cmp eax, 0xa5c76d83
je 0x403b4d
cmp eax, 0xb46218c0
jne 0x403089
imul eax, dword [ebp - 0x18], 0x563178
add eax, 0x49e69b34
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x595ba0d3
jmp 0x403089
cmp eax, 0x4aa05dd8
je 0x4039cb
cmp eax, 0x4baa127c
je 0x4039d7
cmp eax, 0x4ed883f4
jne 0x403089
imul esi, dword [ebp - 0x14], 0xfc0
add esi, 0xc2d9d
mov dword [ebp - 0x14], esi
push esi
call fcn.00401d2c
add esp, 4
push esi
call fcn.00401d2c
jmp 0x403a49
cmp eax, 0xeb219f58
je 0x40372f
cmp eax, 0xecc9b1e0
je 0x4039e3
cmp eax, 0xf7311fe2
jne 0x403089
imul esi, dword [ebp - 0x14], 0x1702
add esi, 0x15a8e2
mov dword [ebp - 0x14], esi
push esi
call fcn.0040303c
add esp, 4
call fcn.0040281e
mov eax, 0xa5c76d83
cmp esi, 0x22
jb 0x403b0c
mov eax, 0x77545d14
jmp 0x403b0c
cmp eax, 0x639e5b9e
je 0x4039fd
cmp eax, 0x668e7e91
jne 0x403089
mov eax, dword [ebp - 0x14]
mov ecx, 0xfffff800
and eax, ecx
lea eax, [eax*8 - 0x52]
mov dword [ebp - 0x14], eax
call fcn.00403bcc
mov dword [ebp - 0x10], 0xa5907254
jmp 0x403089
cmp eax, 0xa1b074d8
je 0x403a2f
cmp eax, 0xa3449c5d
jne 0x403089
mov eax, dword [ebp - 0x18]
shr eax, 8
and eax, 0xffffff80
add eax, 0xfffff9c0
shr eax, 0xe
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x4aa05dd8
jmp 0x403089
cmp eax, 0x35ed8cbd
je 0x403a58
cmp eax, 0x3c3a1b6a
jne 0x403089
mov ecx, dword [ebp - 0x30]
mov eax, 0x7dd44679
cmp ecx, 0xb09406c7
jne 0x40383e
jmp 0x403b0c
cmp eax, 0xd4c96c79
je 0x403a78
cmp eax, 0xe2bac2a3
je 0x403b5e
jmp 0x403089
cmp eax, 0x77545d14
je 0x403b83
cmp eax, 0x7dd44679
jne 0x403089
mov eax, dword [ebp - 0x18]
lea ecx, [eax - 0x171]
imul ecx, ecx
imul edx, ecx, 0x7f0f
dec edx
add eax, 0xffffff11
mov dword [ebp - 0x18], eax
mov eax, 0xfaeeeab5
cmp edx, ecx
je 0x403b0c
mov eax, 0x31f0c7e9
jmp 0x403b0c
cmp eax, 0xc0a64bda
je 0x403aa1
cmp eax, 0xc69534d9
jne 0x403089
push dword [ebp - 0x24]
call fcn.0040303c
add esp, 4
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x10], 0x1b3be671
jmp 0x403089
cmp eax, 0x54364c56
je 0x403ba5
cmp eax, 0x54717205
jne 0x403089
mov esi, dword [ebp - 0x14]
mov eax, 0x10d
add esi, eax
shr esi, 0xa
and esi, 0xffffffc0
mov dword [ebp - 0x14], esi
push esi
call fcn.0040303c
add esp, 4
call fcn.00403076
mov eax, 0x710fb652
cmp esi, 0x66
jae 0x403a25
jmp 0x403b0c
cmp eax, 0x59f1d1f
je 0x403ad6
cmp eax, 0x773c4fb
jne 0x403089
imul esi, dword [ebp - 0x14], 0xa8
add esi, 0x8bc8
mov eax, esi
shr eax, 0xa
mov dword [ebp - 0x14], eax
push eax
call fcn.0040303c
add esp, 4
mov eax, 0x63018b29
cmp esi, 0x33c00
jae 0x403b0c
mov eax, 0xf7311fe2
jmp 0x403b0c
cmp eax, 0x595ba0d3
jne 0x403b14
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x10], 0xecc9b1e0
jmp 0x403089
imul eax, dword [ebp - 0x18], 0x2900000
add eax, 0x23600000
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x27af8aad
jmp 0x403089
mov ecx, dword [ebp - 0x2c]
mov eax, 0x5632f778
cmp ecx, 0x56cf7626
jne 0x403b07
jmp 0x403b0c
mov eax, dword [ebp - 0x1c]
mov dword [eax], 0xff
mov eax, dword [ebp - 0x24]
push dword [ebp - 0x1c]
push dword [ebp - 0x24]
call dword [0x46902c]
mov dword [ebp - 0x10], 0x52749fac
jmp 0x403089
mov eax, dword [ebp - 0x28]
movzx eax, word [eax]
cmp eax, 0xcd03
je 0x403769
movzx eax, ax
cmp eax, 0xf0b
jne 0x403bbf
mov eax, dword [ebp - 0x18]
shr eax, 0xe
add eax, 0xe1
mov ecx, eax
shr ecx, 9
imul eax, eax
imul edx, eax, 0x3797
add ecx, 0xffffff62
dec edx
mov dword [ebp - 0x18], ecx
mov ecx, 0xba2a19b9
cmp edx, eax
je 0x40392b
mov ecx, 0xd01fdd6e
jmp 0x40392b
popal
jmp 0x40376a
imul esi, dword [ebp - 0x14], 0x7bc00
add esi, 0x6d88bc2
mov dword [ebp - 0x14], esi
call fcn.00402bf9
mov eax, 0x24bb473c
cmp esi, 0x3a
jge 0x403b0c
mov eax, 0x54717205
jmp 0x403b0c
imul ecx, dword [ebp - 0x18], 0x37
mov eax, ecx
shr eax, 0xf
imul eax, eax
imul edx, eax, 0x62d
dec edx
shr ecx, 6
and ecx, 0x3ff8000
add ecx, 0xff860000
mov dword [ebp - 0x18], ecx
mov ecx, 0x35ed8cbd
cmp eax, edx
je 0x40392b
mov ecx, 0x93ee3c52
jmp 0x40392b
push dword [ebp - 0x1c]
lea eax, [ebp - 0x230]
push eax
call dword [str.se_se]
mov dword [ebp - 0x10], 0x710fb652
jmp 0x403089
mov eax, dword [ebp - 0x1c]
mov dword [eax], 0xff
mov dword [ebp - 0x10], 0xc95dbb28
jmp 0x403089
mov eax, dword [ebp - 0x18]
mov ecx, 0xcf
add eax, ecx
shr eax, 5
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x8641
dec edx
add eax, 0xffffffa0
mov dword [ebp - 0x18], eax
mov eax, 0x852cc541
cmp edx, ecx
je 0x403b0c
mov eax, 0x595ba0d3
jmp 0x403b0c
lea eax, [ebp - 0x230]
push eax
call fcn.0040303c
add esp, 4
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 0x51a02b8c
jmp 0x403089
mov eax, dword [ebp - 0x18]
lea ecx, [eax + 0xe2]
imul ecx, ecx
imul edx, ecx, 0x85c3
dec edx
add eax, 0xffffff7f
mov dword [ebp - 0x18], eax
mov eax, 0x71ee24da
cmp edx, ecx
je 0x403b0c
mov eax, 0x719da388
jmp 0x403b0c
mov eax, dword [ebp - 0x18]
shr eax, 0xd
lea ecx, [eax + 0x54]
imul ecx, ecx
imul eax, eax, 0x8e
add eax, 0x1b2e
imul edx, ecx, 0x281f
dec edx
mov dword [ebp - 0x18], eax
mov eax, 0x710fb652
cmp ecx, edx
je 0x403b0c
mov eax, 0x3c3a1b6a
jmp 0x403b0c
mov esi, dword [ebp - 0x14]
shl esi, 6
mov edi, 0x35ed8cbd
and esi, 0xffffe000
mov dword [ebp - 0x14], esi
je 0x4038eb
mov edi, 0x4ed883f4
call fcn.00403bcc
push esi
call fcn.0040303c
add esp, 4
mov dword [ebp - 0x10], edi
jmp 0x403089
mov eax, dword [ebp - 0x18]
shr eax, 8
add eax, 0xffffffea
imul ecx, eax, 0xb400
imul eax, eax
imul edx, eax, 0x2b9d
dec edx
mov dword [ebp - 0x18], ecx
mov ecx, 0x9cd44504
cmp edx, eax
je 0x40392b
mov ecx, 0x4baa127c
mov dword [ebp - 0x10], ecx
jmp 0x403089
imul esi, dword [ebp - 0x14], 0x43
add esi, 0xffffdab3
mov eax, esi
shr eax, 0xd
mov dword [ebp - 0x14], eax
call fcn.00402bf9
mov eax, 0x710fb652
cmp esi, 0x1f8000
jb 0x403b0c
mov eax, 0x59f1d1f
jmp 0x403b0c
imul esi, dword [ebp - 0x14], 0xb40
add esi, 0x23dc0
mov edi, esi
shr edi, 6
add edi, 0xffffffa7
mov dword [ebp - 0x14], edi
push edi
call fcn.00401d2c
add esp, 4
push edi
call fcn.00401d2c
add esp, 4
mov eax, 0x710fb652
cmp esi, 0x4940
jae 0x403a25
jmp 0x403b0c
mov eax, dword [ebp - 0x14]
shl eax, 0xd
add eax, 0xfffff4f0
shr eax, 6
mov dword [ebp - 0x14], eax
push eax
call fcn.0040303c
add esp, 4
mov dword [ebp - 0x10], 0xa1b074d8
jmp 0x403089
mov dword [ebp - 0x10], 0x852cc541
jmp 0x403089
mov dword [ebp - 0x10], 0xf7d0a49e
jmp 0x403089
mov eax, dword [ebp + 4]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov al, byte [eax]
mov byte [ebp - 0x1d], al
mov dword [ebp - 0x10], 0x24bb473c
jmp 0x403089
mov ecx, dword [ebp - 0x14]
shl ecx, 0xd
add ecx, 0xffffed00
mov eax, ecx
shr eax, 0xf
add eax, 0x61
mov dword [ebp - 0x14], eax
mov eax, 0x558f6da9
cmp ecx, 0x4e8000
jae 0x403b0c
mov eax, 0x35ed8cbd
jmp 0x403b0c
mov eax, dword [ebp - 0x14]
and eax, 0xfffffff8
shl eax, 0x11
add eax, 0xffe38000
shr eax, 3
mov dword [ebp - 0x14], eax
push eax
call fcn.0040303c
add esp, 4
mov dword [ebp - 0x10], 0x558f6da9
jmp 0x403089
push eax
mov eax, esp
mov dword [ebp - 0x1c], eax
sub esp, 0x200
mov eax, esp
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x10], 0x60198ad6
jmp 0x403089
mov eax, dword [ebp - 0x18]
lea ecx, [eax + 0xaf]
imul ecx, ecx
imul edx, ecx, 0x6c81
dec edx
shl eax, 0xe
mov dword [ebp - 0x18], eax
mov eax, 0x93ee3c52
cmp ecx, edx
je 0x403b0c
mov eax, 0xc69534d9
jmp 0x403b0c
mov eax, dword [ebp - 0x14]
add eax, eax
and eax, 0x3fffffc
lea esi, [eax + eax*2]
lea eax, [eax + eax*2]
add eax, 0xffffef96
mov dword [ebp - 0x14], eax
push eax
call fcn.00401d2c
add esp, 4
mov eax, 0x6d30b425
cmp esi, 0x1146
jb 0x403b0c
mov eax, 0x8d0c7b65
jmp 0x403b0c
mov eax, dword [ebp - 0x14]
mov ecx, 0xd8
add eax, ecx
shr eax, 4
imul esi, eax, 0xf4
mov eax, esi
shr eax, 1
mov dword [ebp - 0x14], eax
call fcn.00403076
call fcn.00403076
mov eax, 0x710fb652
cmp esi, 0xb5
jae 0x403b0c
mov eax, 0xecc9b1e0
mov dword [ebp - 0x10], eax
jmp 0x403089
cmp eax, 0x571ed5f2
je 0x403bbf
jmp 0x403089
mov eax, dword [ebp - 0x14]
movzx eax, al
shl eax, 0xc
mov dword [ebp - 0x14], eax
call fcn.00403bcc
call fcn.00403bcc
jmp 0x403082
imul eax, dword [ebp - 0x14], 0x1a040
add eax, 0xfffff198
jmp 0x403bb7
mov eax, dword [ebp - 0x14]
mov ecx, eax
shl ecx, 7
sub ecx, eax
shr ecx, 1
mov dword [ebp - 0x14], ecx
jmp 0x403b9b
mov esi, dword [ebp - 0x14]
shl esi, 6
add esi, 0x7f4
shr esi, 8
mov dword [ebp - 0x14], esi
call fcn.00402bf9
push esi
call fcn.00401d2c
add esp, 4
jmp 0x403082
mov eax, dword [ebp - 0x14]
mov ecx, 0xffffff14
add eax, ecx
shr eax, 7
and eax, 0xfffffff0
mov dword [ebp - 0x14], eax
call fcn.00403bcc
call fcn.0040281e
jmp 0x403082
imul eax, dword [ebp - 0x14], 0x990
add eax, 0xfffc6a00
shr eax, 0xf
add eax, 0xffffff87
mov dword [ebp - 0x14], eax
jmp 0x403082
mov eax, dword [ebp - 0x1c]
xor eax, eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret