Function at 0x4167e0
Capabilities:
Hash data with crc32
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xc8
mov esi, dword [esp + 0xe4]
mov edi, dword [esp + 0xdc]
mov dword [esp], 0xaa937b77
mov ebx, 0xdd27e91b
cmp esi, 4
jae 0x41680e
mov ebx, 0xeb227f65
not edi
mov eax, dword [esp]
cmp eax, 0xf3916fd4
jg 0x416893
cmp eax, 0xbf8677a5
jg 0x4168fc
cmp eax, 0xaa937b76
jg 0x416a42
cmp eax, 0x90fbe530
jg 0x416c97
cmp eax, 0x895cf965
jg 0x416f90
cmp eax, 0x88be01a0
je 0x417307
cmp eax, 0x8927a85f
jne 0x416810
mov eax, dword [esp + 8]
lea ecx, [eax - 0xbb]
imul ecx, ecx
imul edx, ecx, 0x5951
dec edx
lea eax, [eax*8 - 0x5d8]
and eax, 0xffffe000
mov dword [esp + 8], eax
mov eax, 0x1ceb96f1
cmp ecx, edx
je 0x4176de
mov eax, 0xc71cd4ca
jmp 0x4176de
cmp eax, 0x3bc3b378
jg 0x416970
cmp eax, 0x13d0c0b7
jg 0x4169ce
cmp eax, 0x76d9ca5
jg 0x416bd7
cmp eax, 0x845a73
jg 0x416ea6
cmp eax, 0xf3916fd5
je 0x417347
cmp eax, 0xf6c5cd5b
jne 0x416810
mov eax, dword [esp + 0x28]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x10], eax
mov dword [esp], 0x845a74
jmp 0x416810
cmp eax, 0xe02f4fe1
jg 0x416aa8
cmp eax, 0xccb8bb13
jg 0x416cd9
cmp eax, 0xc71cd4c9
jg 0x416fc3
cmp eax, 0xbf8677a6
je 0x417377
cmp eax, 0xc3501d22
jne 0x416810
mov eax, dword [esp + 0x78]
xor eax, dword [esp + 0x7c]
mov eax, dword [eax*4 + 0x472930]
xor eax, dword [esp + 0x74]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x44]
shr eax, 8
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x10]
inc eax
mov dword [esp + 0x84], eax
mov dword [esp], 0x3a09e3b4
jmp 0x416810
cmp eax, 0x64ee4231
jle 0x416ae0
cmp eax, 0x6e5c2dc8
jg 0x416b6b
cmp eax, 0x6c9a1992
jg 0x416e2f
cmp eax, 0x64ee4232
je 0x41722f
cmp eax, 0x65a2ab43
jne 0x416810
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x70], eax
mov dword [esp], 0xe04cd1ec
jmp 0x416810
cmp eax, 0x2aba2a04
jg 0x416c10
cmp eax, 0x22056e1d
jg 0x416ed3
cmp eax, 0x13d0c0b8
je 0x4173ce
cmp eax, 0x1ceb96f1
jne 0x416810
movzx eax, byte [esp + 0xe]
mov ecx, dword [esp + 0x48]
movzx ecx, cl
xor ecx, eax
mov eax, dword [esp + 0x8c]
xor eax, dword [ecx*4 + 0x472930]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x4c]
shr eax, 8
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x10]
add eax, 3
mov dword [esp + 0x94], eax
mov dword [esp], 0x602deeaf
jmp 0x416810
cmp eax, 0xb244b70b
jg 0x416d2c
cmp eax, 0xb193b39e
jg 0x41700c
cmp eax, 0xaa937b77
je 0x4173ee
cmp eax, 0xaf97212b
jne 0x416810
mov ebp, dword [esp + 4]
shr ebp, 2
and ebp, 0x1fffff
mov dword [esp + 4], ebp
push ebp
push 0x42d4
call fcn.00420d2b
add esp, 8
mov eax, 0xbcb9fe6
cmp ebp, 0xaa
je 0x4176de
mov eax, 0x7e43d795
jmp 0x4176de
cmp eax, 0xeb227f64
jg 0x416d64
cmp eax, 0xe26df8f1
jg 0x417057
cmp eax, 0xe02f4fe2
je 0x4173fa
cmp eax, 0xe04cd1ec
jne 0x416810
mov dword [esp], 0x459792f2
jmp 0x416810
cmp eax, 0x4bb43e66
jg 0x416dcb
cmp eax, 0x459792f1
jg 0x4171c0
cmp eax, 0x3bc3b379
je 0x4176e6
cmp eax, 0x4431cd5b
jne 0x416810
mov ecx, dword [esp + 8]
shr ecx, 0xd
mov eax, ecx
shl eax, 7
sub eax, ecx
add eax, 0xffffffb0
mov ecx, eax
shl ecx, 7
sub ecx, eax
sub ecx, eax
imul eax, eax
imul edx, eax, 0x84e9
dec edx
add ecx, 0x1b6
mov dword [esp + 8], ecx
mov ecx, 0xeeecc413
cmp edx, eax
je 0x416b48
mov ecx, 0x65a2ab43
mov dword [esp], ecx
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], edx
jmp 0x416810
cmp eax, 0x724743a2
jg 0x416e6f
cmp eax, 0x6e5c2dc9
je 0x417265
cmp eax, 0x6fa149df
jne 0x416810
imul ebp, dword [esp + 4], 0x61
mov eax, ebp
shr eax, 3
mov dword [esp + 4], eax
push 0x4985
push 0x30ff
push 0xc16
push 0x1104
push 0x5ef1
push 0xd0a
push eax
call fcn.0041cc8f
add esp, 0x1c
mov eax, 0x7e43d795
cmp ebp, 0x6e8
jae 0x416f43
jmp 0x4176de
cmp eax, 0xa3fe075
jg 0x416ef9
cmp eax, 0x76d9ca6
je 0x417445
cmp eax, 0x80ea686
jne 0x416810
movzx eax, byte [esp + 0xf]
mov dword [esp + 0xa4], eax
mov dword [esp], 0xb244b70c
jmp 0x416810
cmp eax, 0x31a7ca91
jg 0x416f4d
cmp eax, 0x2aba2a05
je 0x41746b
cmp eax, 0x3179aa02
jne 0x416810
mov eax, dword [esp + 4]
add eax, 0xffffffef
shr eax, 0xa
imul ebp, eax, 0xb7
mov dword [esp + 4], ebp
push 0xfc4
push dword [esp + 0xcc]
push ebp
push 0x593e
push 0x25ac
call fcn.0041df9b
add esp, 0x14
push 0x14f5
push 0x517
push ebp
push 0x4306
push 0x4e39
push 0x115d
push 0x25de
call fcn.0042057e
add esp, 0x1c
mov dword [esp], 0xa076448d
jmp 0x416810
cmp eax, 0xa076448c
jg 0x417095
cmp eax, 0x90fbe531
je 0x417492
cmp eax, 0x9d1fe6d8
jne 0x416810
mov eax, dword [esp + 0x98]
lea eax, [eax*4 + 0x472930]
mov dword [esp + 0x9c], eax
mov dword [esp], 0x8927a85f
jmp 0x416810
cmp eax, 0xd85c26d5
jg 0x4170e9
cmp eax, 0xccb8bb14
je 0x4174a8
cmp eax, 0xcccbdac0
jne 0x416810
mov ecx, dword [esp + 4]
mov eax, 0xffffff66
add ecx, eax
mov eax, ecx
shr eax, 0x16
add eax, 0xfffffff0
mov dword [esp + 4], eax
mov eax, 0xa32c832a
cmp ecx, 0x14400000
jb 0x4176de
mov eax, 0x90fbe531
jmp 0x4176de
cmp eax, 0xb986bc78
jg 0x417133
cmp eax, 0xb244b70c
je 0x4174db
cmp eax, 0xb53ddd3d
jne 0x416810
mov eax, dword [esp + 4]
and eax, 0xfffffffc
shl eax, 0xd
add eax, 0xffff9400
shr eax, 7
jmp 0x416fb3
cmp eax, 0xeeecc412
jg 0x417169
cmp eax, 0xeb227f65
je 0x4174f7
cmp eax, 0xeee9bf99
jne 0x416810
mov ecx, dword [esp + 8]
shr ecx, 8
imul eax, ecx, 0x52
imul ecx, ecx
imul edx, ecx, 0x7d49
dec edx
mov dword [esp + 8], eax
mov eax, 0xb193b39f
cmp edx, ecx
je 0x416dab
mov eax, 0xd85c26d6
mov dword [esp], eax
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x38], eax
mov dword [esp + 0x34], ecx
jmp 0x416810
cmp eax, 0x5f257484
jle 0x4171f1
cmp eax, 0x5f257485
je 0x417218
cmp eax, 0x602deeaf
jne 0x416810
mov eax, dword [esp + 8]
mov ecx, 0xffffff1f
add eax, ecx
mov ecx, eax
shr ecx, 0xd
shr eax, 0x19
imul ecx, ecx
imul edx, ecx, 0x1165
dec edx
imul eax, eax, 0xf9
add eax, 0xffff96f4
mov dword [esp + 8], eax
mov eax, 0x6d3a3981
cmp ecx, edx
je 0x4176de
mov eax, 0x76d9ca6
jmp 0x4176de
cmp eax, 0x6c9a1993
je 0x4172a6
cmp eax, 0x6d3a3981
jne 0x416810
mov ecx, dword [esp + 4]
mov eax, 0xfffff000
and ecx, eax
mov dword [esp + 4], ecx
mov eax, 0xa3fe076
cmp ecx, 0x99
jl 0x4176de
mov eax, 0xe05f9074
jmp 0x4176de
cmp eax, 0x724743a3
je 0x4172e6
cmp eax, 0x7e43d795
jne 0x416810
mov eax, dword [esp + 0x68]
shr eax, 8
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x10]
mov al, byte [eax]
mov byte [esp + 0xd], al
mov dword [esp], 0x13d0c0b8
jmp 0x416810
cmp eax, 0x845a74
je 0x41753e
cmp eax, 0x6f0d1ed
jne 0x416810
mov eax, dword [esp + 0x10]
mov al, byte [eax + 2]
mov byte [esp + 0xe], al
mov dword [esp], 0xccb8bb14
jmp 0x416810
cmp eax, 0x22056e1e
je 0x41754a
cmp eax, 0x241b1475
jne 0x416810
mov dword [esp + 0x40], edi
mov dword [esp], 0xa076448d
jmp 0x416810
cmp eax, 0xa3fe076
je 0x417574
cmp eax, 0x12caeac5
jne 0x417741
imul eax, dword [esp + 8], 0x85
lea ecx, [eax - 0x28]
add eax, 0xffffff26
imul ecx, ecx
shr eax, 2
imul edx, ecx, 0xbd5
dec edx
imul eax, eax, 0xf6
mov dword [esp + 8], eax
mov eax, 0xa076448d
cmp edx, ecx
je 0x4176de
mov eax, 0x6f0d1ed
jmp 0x4176de
cmp eax, 0x31a7ca92
je 0x4175a2
cmp eax, 0x3a09e3b4
jne 0x416810
mov eax, dword [esp + 8]
lea ecx, [eax + 0x174]
imul ecx, ecx
imul edx, ecx, 0x1269
add eax, 0x3f
dec edx
mov dword [esp + 8], eax
mov eax, 0x7e43d795
cmp ecx, edx
jne 0x41736d
jmp 0x4176de
cmp eax, 0x895cf966
je 0x4175b3
cmp eax, 0x90abbf42
jne 0x416810
imul eax, dword [esp + 4], 0xb20000
add eax, 0x2f480000
mov dword [esp + 4], eax
mov dword [esp], 0x90fbe531
jmp 0x416810
cmp eax, 0xc71cd4ca
je 0x4175ff
cmp eax, 0xc7b8ff6d
jne 0x416810
mov eax, dword [esp + 8]
mov ecx, 0xa0
add eax, ecx
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x35e7
dec edx
shr eax, 0xe
and eax, 0xfffffffe
mov dword [esp + 8], eax
mov eax, 0xa076448d
cmp edx, ecx
jne 0x4176b3
jmp 0x4176de
cmp eax, 0xb193b39f
je 0x41761f
cmp eax, 0xb2409be6
jne 0x416810
mov eax, dword [esp + 0x10]
add eax, 4
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0xb8]
add eax, 0xfffffffc
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x14]
mov eax, 0x895cf966
cmp ecx, 4
jae 0x4176de
mov eax, 0xeee9bf99
jmp 0x4176de
cmp eax, 0xe26df8f2
je 0x41763e
cmp eax, 0xe7dc6a3e
jne 0x416810
mov eax, dword [esp + 0x6c]
movzx eax, al
xor eax, dword [esp + 0xa4]
lea eax, [eax*4 + 0x472930]
mov dword [esp + 0xa8], eax
mov dword [esp], 0xe26df8f2
jmp 0x416810
cmp eax, 0xa076448d
je 0x41765a
cmp eax, 0xa32c832a
jne 0x416810
mov ebp, dword [esp + 4]
shr ebp, 0x19
add ebp, 0xffffff4f
mov dword [esp + 4], ebp
push 0x77e
push 0x47c
push 0x4b3e
push ebp
call fcn.0041b506
add esp, 0x10
push ebp
call fcn.0041b6e8
add esp, 4
mov dword [esp], 0x90fbe531
jmp 0x416810
cmp eax, 0xd85c26d6
je 0x417662
cmp eax, 0xdd27e91b
jne 0x416810
imul eax, dword [esp + 8], 0x980
add eax, 0xffffda00
mov dword [esp + 8], eax
mov dword [esp], 0xf6c5cd5b
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0xe0]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], esi
jmp 0x416810
cmp eax, 0xb986bc79
je 0x417689
cmp eax, 0xbcf08c18
jne 0x416810
imul eax, dword [esp + 4], 0x90000000
shr eax, 2
or eax, 0x130000
mov dword [esp + 4], eax
mov dword [esp], 0x6de2b0ce
jmp 0x416810
cmp eax, 0xeeecc413
je 0x4176ba
cmp eax, 0xf247de0f
jne 0x416810
mov eax, dword [esp + 8]
shr eax, 0xb
add eax, 0x87
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x39b7
dec edx
shl eax, 6
and eax, 0xfffc000
imul eax, eax, 0xa6
mov dword [esp + 8], eax
mov eax, 0xa076448d
cmp edx, ecx
je 0x4176de
mov eax, 0x80ea686
jmp 0x4176de
cmp eax, 0x459792f2
je 0x417713
cmp eax, 0x47b9c609
jne 0x416810
mov eax, dword [esp + 4]
shl eax, 0xb
mov dword [esp + 4], eax
mov eax, 0x2aba2a05
jne 0x417488
jmp 0x4176de
cmp eax, 0x4da77fde
jne 0x41772d
mov eax, dword [esp + 8]
shl eax, 0x11
add eax, 0xfffff3c0
mov dword [esp + 8], eax
mov dword [esp], 0xa3fe076
jmp 0x416810
mov eax, dword [esp + 0x18]
mov dword [esp + 0xc0], eax
mov dword [esp], 0x5ad917fc
jmp 0x416810
mov eax, dword [esp + 8]
add eax, 0x33
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x2af5
shr eax, 9
and eax, 0x1fffff
dec edx
mov dword [esp + 8], eax
mov eax, 0xbcf08c18
cmp edx, ecx
je 0x4176de
mov eax, 0xc3501d22
jmp 0x4176de
mov eax, dword [esp + 4]
shl eax, 0x12
mov ebp, 0x7e43d795
and eax, 0x1c0000
mov dword [esp + 4], eax
je 0x417281
mov ebp, 0x1ceb96f1
push 0x4e04
push 0x3c8e
push 0xb92
push eax
call fcn.0041ccfa
add esp, 0x10
call fcn.00425afe
mov dword [esp], ebp
jmp 0x416810
imul ebp, dword [esp + 4], 0x1e479
add ebp, 0xfff47352
mov dword [esp + 4], ebp
push 0x3e77
push ebp
push 0x726
call fcn.0041d47d
add esp, 0xc
mov eax, 0x3179aa02
cmp ebp, 0xa3
jl 0x4176de
mov eax, 0xa076448d
jmp 0x4176de
cmp dword [esp + 0x64], 0
mov eax, 0x5f257485
je 0x4172f7
mov eax, 0xbf8677a6
mov dword [esp], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x18], eax
jmp 0x416810
mov eax, dword [esp + 8]
shr eax, 0xc
imul eax, eax, 0xeb
add eax, 0xffffffb9
imul ecx, eax, 0x27
imul eax, eax
imul edx, eax, 0xf53
dec edx
add ecx, 0xffffff0b
shr ecx, 7
mov dword [esp + 8], ecx
mov ecx, 0xc3501d22
cmp eax, edx
je 0x41733f
mov ecx, 0xb2409be6
mov dword [esp], ecx
jmp 0x416810
mov ecx, dword [esp + 4]
mov eax, 0x151
add ecx, eax
shr ecx, 0xe
and ecx, 0xffffffe0
mov dword [esp + 4], ecx
mov eax, 0x4f223572
cmp ecx, 0xd6
jae 0x4176de
mov eax, 0x3bc3b379
jmp 0x4176de
mov eax, dword [esp + 8]
shr eax, 5
and eax, 0x3ffffff
imul ecx, eax, 0x61
imul eax, eax
imul edx, eax, 0x7779
add ecx, 0x837b
dec edx
shr ecx, 4
mov dword [esp + 8], ecx
mov ecx, 0x47b9c609
cmp eax, edx
je 0x4173ab
mov ecx, 0x65a2ab43
mov dword [esp], ecx
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x1c], eax
jmp 0x416810
movzx eax, byte [esp + 0xd]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x68]
movzx eax, al
mov dword [esp + 0x7c], eax
mov dword [esp], 0x64ee4232
jmp 0x416810
mov dword [esp], 0x241b1475
jmp 0x416810
mov eax, dword [esp + 0xa0]
xor eax, dword [esp + 0xac]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x70]
inc eax
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xbc]
dec eax
mov dword [esp + 0x5c], eax
cmp dword [esp + 0x5c], 0
mov eax, 0x5f257485
je 0x417435
mov eax, 0x4431cd5b
mov dword [esp], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x18], eax
jmp 0x416810
mov eax, dword [esp + 0x94]
movzx eax, byte [eax]
mov ecx, dword [esp + 0x4c]
movzx ecx, cl
xor ecx, eax
mov dword [esp + 0x98], ecx
mov dword [esp], 0xc7b8ff6d
jmp 0x416810
imul ecx, dword [esp + 4], 0x9400
mov dword [esp + 4], ecx
mov eax, 0x4157743f
cmp ecx, 0x80
jl 0x4176de
mov eax, 0x724743a3
jmp 0x4176de
mov eax, dword [esp + 0x70]
mov al, byte [eax]
mov byte [esp + 0xf], al
mov dword [esp], 0xf247de0f
jmp 0x416810
mov eax, dword [esp + 8]
lea ecx, [eax - 0x66]
imul ecx, ecx
imul edx, ecx, 0x420b
dec edx
lea eax, [eax*4 + 0x9c]
mov dword [esp + 8], eax
mov eax, 0x7e43d795
cmp edx, ecx
je 0x4176de
mov eax, 0x1ceb96f1
jmp 0x4176de
mov eax, dword [esp + 8]
shl eax, 0xb
or eax, 0x1ca
mov dword [esp + 8], eax
mov dword [esp], 0xe7dc6a3e
jmp 0x416810
mov eax, dword [esp + 8]
shr eax, 0xd
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x7541
dec edx
shl eax, 5
mov dword [esp + 8], eax
mov eax, 0xa076448d
cmp ecx, edx
je 0x41751f
mov eax, 0xd85c26d6
mov dword [esp], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0xe0]
mov dword [esp + 0x34], eax
jmp 0x416810
mov dword [esp], 0x7e43d795
jmp 0x416810
imul ecx, dword [esp + 4], 0x13c00
add ecx, 0x4ef96
mov dword [esp + 4], ecx
mov eax, 0x90fbe531
cmp ecx, 0x54
jl 0x4176de
mov eax, 0x459792f2
jmp 0x4176de
mov eax, dword [esp + 0x88]
mov eax, dword [eax]
xor eax, dword [esp + 0x80]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x48]
shr eax, 8
mov dword [esp + 0x8c], eax
mov dword [esp], 0x12caeac5
jmp 0x416810
shl dword [esp + 4], 0xb
mov dword [esp], 0xb2409be6
jmp 0x416810
mov eax, dword [esp + 8]
imul ecx, eax, 0x8177
imul ecx, ecx
imul edx, ecx, 0x17fb
dec edx
imul eax, eax, 0x205dc
mov dword [esp + 8], eax
mov eax, 0x6f0d1ed
cmp ecx, edx
je 0x4175df
mov eax, 0xf6c5cd5b
mov dword [esp], eax
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], edx
jmp 0x416810
mov eax, dword [esp + 0x9c]
mov eax, dword [eax]
xor eax, dword [esp + 0x90]
mov dword [esp + 0x50], eax
mov dword [esp], 0x88be01a0
jmp 0x416810
mov eax, dword [esp + 4]
shr eax, 0xd
and eax, 0x7fe00
add eax, 0xffffff81
mov dword [esp + 4], eax
mov dword [esp], 0xa076448d
jmp 0x416810
mov eax, dword [esp + 0xa8]
mov eax, dword [eax]
mov dword [esp + 0xac], eax
mov dword [esp], 0xe02f4fe2
jmp 0x416810
mov dword [esp], ebx
jmp 0x416810
mov eax, dword [esp + 0x34]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x64], eax
mov dword [esp], 0x724743a3
jmp 0x416810
imul ebp, dword [esp + 4], 0x1acd30
add ebp, 0xffffff55
mov dword [esp + 4], ebp
push 0x5ff9
push ebp
call fcn.004177b6
add esp, 8
mov eax, 0xc71cd4ca
cmp ebp, 8
jl 0x4176de
mov eax, 0x9d1fe6d8
jmp 0x4176de
imul eax, dword [esp + 4], 0x3f0000
or eax, 0x76
imul ecx, eax, 0x5a75
mov dword [esp + 4], ecx
mov eax, 0xabd3a5bc
cmp ecx, 0x35
jge 0x4176de
mov eax, 0xb53ddd3d
mov dword [esp], eax
jmp 0x416810
mov eax, dword [esp + 0x84]
movzx eax, byte [eax]
mov ecx, dword [esp + 0x44]
movzx ecx, cl
xor ecx, eax
lea eax, [ecx*4 + 0x472930]
mov dword [esp + 0x88], eax
mov dword [esp], 0x4da77fde
jmp 0x416810
mov eax, dword [esp + 0x6c]
shr eax, 8
mov dword [esp + 0xa0], eax
mov dword [esp], 0x90fbe531
jmp 0x416810
cmp eax, 0x5ad917fc
je 0x417773
cmp eax, 0x4bb43e67
jne 0x416810
jmp 0x417787
cmp eax, 0xbcb9fe6
jne 0x416810
imul eax, dword [esp + 4], 0xe400
or eax, 0xd9
imul eax, eax, 0xf4
add eax, 0x9d
mov dword [esp + 4], eax
push 0x52ce
push eax
call fcn.00420d2b
mov eax, dword [esp + 0xc0]
not eax
add esp, 0xc8
pop esi
pop edi
pop ebx
pop ebp
ret
imul eax, dword [esp + 4], 0x9b
mov dword [esp + 4], eax
push eax
push 0xa93
push 0x3f7c
call fcn.0041cdc1
mov eax, dword [esp + 0xc]
imul eax, dword [esp + 8]
push eax
call fcn.0045e524
add esp, 4
ret