Function at 0x41fcdd
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x60
mov ebx, dword [esp + 0x80]
mov dword [0x446c4c], 0x9dd20274
movzx eax, word [0x441a24]
inc eax
mov word [0x441a24], ax
cwde
mov ecx, dword [0x444a24]
sar ecx, 1
and ecx, eax
xor dword [0x4435dc], ecx
movsx eax, word [0x442f12]
not eax
imul eax, eax, 0xd4e56f7e
cmp eax, 0xf1ebc4cd
jg 0x41fd36
and dword [0x446e88], 0xdffd3f7f
jmp 0x41fd56
mov eax, dword [0x446864]
inc eax
mov dword [0x446864], eax
or eax, 0x6625bfe3
cmp eax, 0xecfe64bb
jl 0x41fd56
xor word [0x44128c], 0x9dfc
push 0
push ebx
call fcn.0040ed9e
add esp, 8
mov esi, 0xfffffff4
test eax, eax
je 0x420c2a
mov dword [0x4438c0], 0x59cbffba
lea eax, [esp + 0x24]
lea ecx, [esp + 0x30]
lea edx, [esp + 0x3c]
lea ebp, [esp + 0x48]
lea esi, [esp + 0x54]
push 0
push eax
push ecx
push edx
push ebp
push esi
call fcn.0040efe4
add esp, 0x18
mov eax, dword [0x44691c]
sar eax, 9
add eax, 0x7f774064
cmp eax, 0xff3bd7f8
jl 0x41fdc2
mov eax, dword [0x446080]
shl eax, 2
xor eax, 0xa41dfc8
add dword [0x443ab4], eax
mov edi, dword [esp + 0x74]
push ebx
mov ebx, dword [esp + 0x80]
push ebx
call fcn.0040b786
add esp, 8
test eax, eax
js 0x41ff4f
add dword [0x447508], 0x7fca76e0
push ebx
push esi
call fcn.0040f7c7
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
mov eax, dword [0x444928]
dec eax
mov dword [0x444928], eax
mov dword [0x444864], eax
mov eax, dword [esp + 0x80]
push eax
push ebp
call fcn.0040f7c7
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
movzx eax, word [0x44277c]
lea ecx, [eax - 1]
mov word [0x44277c], cx
xor eax, 0x1a22
sub word [0x4427a8], ax
mov dword [esp + 0x48], 1
mov dword [esp + 0x54], 1
add word [0x442596], 0xdb20
mov eax, dword [esp + 0x7c]
mov eax, dword [eax + 4]
add eax, 2
push eax
lea eax, [esp + 0x40]
push eax
call fcn.00404693
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
xor dword [0x44482c], 0x9d8f0804
push 0
lea eax, [esp + 0x40]
push eax
call fcn.00404818
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
mov eax, dword [0x446990]
lea ecx, [eax - 1]
mov dword [0x446990], ecx
mov ecx, dword [0x44440c]
lea edx, [ecx - 1]
mov dword [0x44440c], edx
lea eax, [ecx + eax - 2]
mov dword [0x4435f0], eax
push 2
lea eax, [esp + 0x34]
push eax
call fcn.00404693
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
mov eax, dword [0x444540]
lea ecx, [eax + 1]
mov dword [0x444540], ecx
add eax, 0xcb6ec857
xor dword [0x445774], eax
push 3
lea eax, [esp + 0x28]
push eax
call fcn.00404693
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
mov eax, 0x535c1992
and eax, dword [0x447768]
cmp eax, 0x2852d480
ja 0x41ffcc
mov eax, dword [0x446204]
dec eax
mov dword [0x446204], eax
or eax, 0xa84a
movzx ecx, word [0x441c22]
sub ecx, eax
mov word [0x441c22], cx
jmp 0x420002
imul eax, dword [0x444948], 0x2080c486
mov dword [0x444948], eax
test edi, edi
je 0x41ff77
push 0
push edi
call fcn.00404818
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
imul eax, dword [0x443b2c], 0xd4f1f780
add dword [0x447640], eax
cmp dword [esp + 0x78], 0
je 0x41ffa6
push ebx
mov eax, dword [esp + 0x7c]
push eax
call fcn.0040f7c7
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
mov eax, dword [0x444db4]
lea ecx, [eax - 1]
mov dword [0x444db4], ecx
add eax, 0x234e07cd
imul eax, dword [0x444e18]
mov dword [0x444e18], eax
xor esi, esi
jmp 0x420c2a
mov eax, dword [0x44661c]
inc eax
mov dword [0x44661c], eax
cmp eax, 0x18068f0f
je 0x420002
mov eax, dword [0x444e30]
lea ecx, [eax + 1]
mov dword [0x444e30], ecx
add eax, 0x3f9ef966
movzx ecx, word [0x4417f6]
imul ecx, eax
mov word [0x4417f6], cx
push ebp
call fcn.0040f153
add esp, 4
mov ecx, eax
sar ecx, 0x1f
shr ecx, 0x1b
lea ecx, [ecx + eax]
and ecx, 0xffffffe0
sub eax, ecx
or word [0x4433c8], 0x5330
xor edi, edi
cmp eax, 0x1e
jg 0x420095
imul cx, word [0x44134e], 0x1fa2
mov word [0x44134e], cx
mov edi, 0x1f
sub edi, eax
xor word [0x441fe4], 0xc8b9
push edi
lea eax, [esp + 0x58]
push eax
call fcn.0040f1de
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
mov eax, dword [0x446580]
shl eax, 8
and dword [0x445674], eax
push edi
push ebp
call fcn.0040f1de
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
mov eax, 0xa46be4f3
or eax, dword [0x444a10]
mov dword [0x446788], eax
mov dword [esp + 0x14], edi
xor word [0x441404], 0x8222
mov esi, dword [esp + 0x58]
dec esi
mov dword [esp + 0x1c], esi
mov ax, word [0x4419a4]
movsx eax, word [0x442f06]
add eax, 0x300b88c7
or dword [0x444664], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x20], eax
lea ecx, [eax - 1]
mov dword [esp + 0x18], ecx
mov eax, 0xe6993825
add eax, dword [0x443c28]
and eax, 0xbda06b7a
xor dword [0x4474a0], eax
sub esi, ecx
mov ebx, esi
shl ebx, 5
push ebx
push ebp
call fcn.0040f1de
add esp, 8
mov eax, 0xc11c614d
sub eax, dword [0x445b10]
add dword [0x446350], eax
push ebp
lea edi, [esp + 0x58]
jmp 0x42015e
mov eax, dword [0x4471a8]
lea ecx, [eax + 1]
mov dword [0x4471a8], ecx
add eax, 0x6e5057c
or eax, 0xe9bab771
sub dword [0x443c78], eax
mov eax, dword [esp + 0x44]
inc dword [eax + esi*4]
mov eax, dword [0x4435dc]
mov ecx, 0x22030eef
xor eax, ecx
and dword [0x4472a8], eax
push ebp
push edi
push edi
call fcn.0041a6b6
add esp, 0xc
mov dword [0x4459dc], 0xfbd8650e
push ebp
push edi
call fcn.0040f56b
add esp, 8
test eax, eax
jns 0x420111
or word [0x441cfc], 0x9dfa
push ebx
push ebp
call fcn.00420c34
add esp, 8
mov eax, dword [0x443cb0]
shr eax, 0xa
or eax, 0x24b
movzx ecx, word [0x443128]
add ecx, eax
mov word [0x443128], cx
mov eax, dword [esp + 0x1c]
cmp eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x20]
jle 0x420a38
mov eax, 1
sub eax, ebx
dec eax
mov dword [esp + 0x10], eax
mov esi, dword [esp + 0x1c]
imul ax, word [0x442460], 0x3933
mov word [0x442460], ax
mov eax, dword [esp + 0x5c]
mov eax, dword [eax + esi*4]
mov ecx, dword [esp + 0x50]
cmp eax, dword [ecx + ebx*4 - 4]
jae 0x4202c0
dec word [0x4428b8]
movsx eax, word [0x442562]
and eax, 0xc21fd9e8
mov ecx, dword [0x443648]
lea edx, [ecx + 1]
mov dword [0x443648], edx
add ecx, 0x389bc04
cmp eax, ecx
je 0x420229
mov eax, dword [0x444110]
mov ecx, 0xef7b7b8e
or eax, ecx
xor eax, dword [0x4446e4]
xor eax, 0x10848471
mov dword [0x4446e4], eax
mov eax, dword [0x4446b0]
and eax, dword [0x444bf4]
add dword [0x445fe8], eax
movsx eax, word [0x44134e]
or eax, 0xa59b13c0
movzx ecx, word [0x44280a]
dec ecx
mov word [0x44280a], cx
movsx ecx, cx
and ecx, 0xb50ab97d
cmp eax, ecx
jge 0x420271
imul eax, dword [0x44500c], 0x32d74d70
mov dword [0x44500c], eax
mov eax, dword [esp + 0x50]
mov ecx, dword [eax + ebx*4 - 4]
mov dword [esp + 0x20], ebx
or dword [0x4459f0], 0xa06422
movzx eax, cx
mov dword [esp + 0x1c], eax
mov eax, dword [0x444754]
lea edx, [eax + 1]
mov dword [0x444754], edx
mov edx, 0x97d60414
sub edx, eax
mov eax, dword [0x443498]
sar eax, 8
cmp edx, eax
jle 0x4202e2
imul eax, dword [0x445d04], 0xcc3b0db2
mov dword [0x445d04], eax
jmp 0x4202ed
mov dword [esp + 0x20], ebx
mov eax, dword [esp + 0x10]
lea eax, [eax + esi]
mov ecx, dword [esp + 0x44]
mov dword [ecx + eax*4], 0xffffffff
lea eax, [esi - 1]
mov dword [esp + 0x1c], eax
jmp 0x4205a7
mov eax, dword [0x446ce0]
add dword [0x443564], eax
mov ebp, ecx
shr ebp, 0x10
and dword [0x444198], 0x8389c914
mov eax, dword [esp + 0x5c]
mov eax, dword [eax + esi*4]
xor edx, edx
div ebp
mov edi, eax
movzx eax, word [0x442d1e]
dec eax
mov word [0x442d1e], ax
cwde
add eax, 0x37215ff3
and eax, 0x2144550b
sub dword [0x445d10], eax
mov eax, dword [esp + 0x5c]
mov eax, dword [eax + esi*4]
mov edx, edi
imul edx, ebp
sub eax, edx
movsx edx, word [0x442f5e]
shl edx, 6
or dword [0x446b18], edx
mov edx, dword [0x444314]
mov ebx, esi
mov dword [esp + 0xc], ebx
movzx esi, word [0x44165a]
and esi, edx
shl eax, 0x10
and esi, 0x6ca3
mov word [0x44165a], si
mov edx, dword [esp + 0x5c]
movzx esi, word [edx + ebx*4 - 2]
or esi, eax
mov eax, dword [0x443a54]
mov edx, 0xba10e8e
xor eax, edx
add dword [0x4454c4], eax
imul eax, dword [0x4435f4], 0x8d99cfa9
or eax, 0x14f04a87
add dword [0x44712c], eax
mov ebx, edi
imul ebx, dword [esp + 0x1c]
cmp esi, ebx
jae 0x42040c
mov eax, 0x15534673
sub eax, dword [0x4437d0]
add dword [0x446b18], eax
lea edx, [esi + ecx]
mov eax, dword [0x44721c]
cmp eax, 0xa477a6c2
jne 0x4203de
mov eax, dword [0x4465e4]
cmp eax, 0x5367c7a4
jl 0x4203de
xor dword [0x4455dc], 0x2dfdb63a
dec edi
cmp edx, ecx
jb 0x4203fb
cmp edx, ebx
jae 0x4203fb
lea edx, [ecx + ecx]
dec edi
lea eax, [edx + esi]
add esi, ecx
cmp eax, ecx
jb 0x4203f8
cmp eax, ebx
jb 0x4203ea
lea edx, [esi + ecx]
imul eax, dword [0x444a38], 0xa62a4612
mov dword [0x444a38], eax
mov esi, edx
or dword [0x4442c8], 0x7cf73cff
sub esi, ebx
add dword [0x443e28], 0x130c8201
xor edx, edx
mov eax, esi
div ebp
movsx edx, word [0x442c9c]
and edx, 0xaa852410
mov dword [0x4450d0], edx
imul ebp, eax
sub esi, ebp
movsx edx, word [0x442504]
xor dword [0x443904], edx
shl esi, 0x10
mov edx, dword [0x4465b4]
cmp edx, 0x4daddbd2
jl 0x42046a
and dword [0x445300], 0x66d202
jmp 0x420493
mov edx, dword [0x444db0]
cmp edx, 0x8ad38002
jl 0x420493
mov ebx, dword [0x444e98]
lea edx, [ebx + 1]
mov dword [0x444e98], edx
and ebx, 0xb472946f
sub dword [0x4478a8], ebx
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0xc]
movzx ebx, word [edx + ebx*4 - 4]
or ebx, esi
mov esi, dword [0x443b08]
lea edx, [esi + 1]
mov dword [0x443b08], edx
imul esi, dword [0x445458]
imul edx, esi, 0x804ab3ae
mov dword [0x445458], edx
mov esi, dword [esp + 0x1c]
imul esi, eax
and dword [0x445e2c], 0x2b7478f8
cmp ebx, esi
jae 0x42051d
add word [0x4425d8], 0x4a95
or dword [0x447270], 0x51710888
lea edx, [ebx + ecx]
dec eax
cmp edx, ecx
jb 0x4204fb
cmp edx, esi
lea edx, [edx + ecx]
jb 0x4204ef
mov ecx, dword [0x4455b0]
lea edx, [ecx + 1]
mov dword [0x4455b0], edx
and ecx, 0x77b8859e
imul ecx, dword [0x447134]
mov dword [0x447134], ecx
lea ebp, [esp + 0x48]
mov ecx, dword [0x444d88]
lea edx, [ecx + 1]
mov dword [0x444d88], edx
cmp ecx, 0xa7819e68
jne 0x420558
mov ecx, dword [0x444578]
cmp ecx, 0xba01e890
jne 0x42054e
dec dword [0x4449a0]
jmp 0x420558
xor dword [0x445c24], 0xffc8b65c
movsx ecx, word [0x442982]
mov edx, dword [0x444e0c]
mov esi, 0x32c5f5c
or edx, esi
cmp ecx, edx
jne 0x420580
imul ecx, dword [0x4440bc], 0xfcda5d1f
mov dword [0x4440bc], ecx
mov esi, dword [esp + 0xc]
lea ecx, [esi - 1]
mov dword [esp + 0x1c], ecx
shl edi, 0x10
or eax, edi
mov ecx, dword [esp + 0x10]
lea ecx, [ecx + esi]
mov edx, dword [esp + 0x44]
mov dword [edx + ecx*4], eax
and word [0x441d5c], 0xfdde
mov dword [0x4447fc], 0x4c0c728
mov edi, esi
sub edi, dword [esp + 0x18]
lea eax, [edi - 1]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x44]
inc dword [eax + edi*4 - 4]
imul ax, word [0x443332], 0x774f
mov word [0x443332], ax
movsx eax, word [0x441a8c]
and eax, 0x9e108040
or eax, 0x61a26c13
mov ecx, dword [0x447354]
mov edx, 0x21e82d08
and ecx, edx
xor ecx, 0xf5fffdaa
mov ebx, esi
cmp eax, ecx
jle 0x42060b
add dword [0x44789c], 0x2832a0db
jmp 0x420632
movsx eax, word [0x4418fc]
lea ecx, [eax + 1]
mov word [0x4418fc], cx
xor eax, 0xae483fe6
cmp eax, 0x605ae028
jl 0x420632
add dword [0x4476b4], 0x63de90ef
mov eax, dword [esp + 0x44]
dec dword [eax + edi*4 - 4]
mov eax, dword [0x4460bc]
mov ecx, 0x3505d3c2
or eax, ecx
imul eax, dword [0x445ca4]
mov dword [0x445ca4], eax
push 0
lea eax, [esp + 0x34]
push eax
call fcn.00404818
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
mov eax, dword [0x4474f4]
lea ecx, [eax + 1]
mov dword [0x4474f4], ecx
cmp eax, 0x279f4681
mov edx, dword [esp + 0x20]
jne 0x4206a2
mov eax, dword [0x443a64]
mov ecx, 0xf3e9b6d5
add eax, ecx
cmp eax, 0x1303c081
jl 0x4206b1
add word [0x44345c], 0x3397
jmp 0x4206b1
imul eax, dword [0x4446fc], 0x96352684
mov dword [0x4446fc], eax
xor eax, eax
cmp edx, 2
jl 0x4206c0
mov eax, dword [esp + 0x50]
mov eax, dword [eax + edx*4 - 8]
mov ecx, dword [esp + 0x38]
mov dword [ecx], eax
mov eax, dword [0x4451d8]
lea ecx, [eax + 1]
mov dword [0x4451d8], ecx
or eax, 0x93ad2ec3
xor eax, 0x8508114
movzx ecx, word [0x442cf4]
inc ecx
mov word [0x442cf4], cx
movsx ecx, cx
add ecx, 0x3616d5f9
and ecx, 0xd0435ea1
cmp eax, ecx
jge 0x420709
add word [0x442060], 0xccbb
mov eax, dword [esp + 0x50]
mov eax, dword [eax + edx*4 - 4]
mov ecx, dword [esp + 0x38]
mov dword [ecx + 4], eax
movsx eax, word [0x441940]
add eax, eax
mov ecx, dword [0x445740]
sar ecx, 9
xor ecx, eax
cmp ecx, 0xaebdbfdb
je 0x42074d
mov eax, dword [0x44380c]
sar eax, 4
imul eax, eax, 0xcf4864b9
and eax, 0xd57d0c81
add dword [0x444328], eax
mov eax, dword [esp + 0x44]
push dword [eax + edi*4 - 4]
lea eax, [esp + 0x34]
push eax
push eax
call fcn.00420e44
add esp, 0xc
mov esi, eax
test esi, esi
jne 0x420bf0
and dword [0x444914], 0xc5ad6a35
push 0
lea eax, [esp + 0x28]
push eax
call fcn.00404818
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
mov eax, dword [0x4447ec]
lea ecx, [eax - 1]
mov dword [0x4447ec], ecx
mov ecx, 0x4a7be7c8
sub ecx, eax
add dword [0x446914], ecx
xor eax, eax
mov esi, ebx
cmp esi, 2
mov ecx, 0
jl 0x4207c1
mov ecx, dword [esp + 0x5c]
mov ecx, dword [ecx + esi*4 - 8]
test esi, esi
mov edx, dword [esp + 0x2c]
mov dword [edx], ecx
mov ecx, dword [0x443fdc]
movzx edx, word [0x441cf2]
lea ecx, [ecx + edx + 0x796e]
mov word [0x441cf2], cx
jle 0x4207f1
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x1c]
mov eax, dword [eax + ecx*4]
mov ecx, dword [esp + 0x2c]
mov dword [ecx + 4], eax
movzx eax, word [0x441cda]
dec eax
mov word [0x441cda], ax
imul eax, eax, 0xffffc1ac
add word [0x44297a], ax
mov eax, dword [esp + 0x5c]
mov eax, dword [eax + esi*4]
mov ecx, dword [esp + 0x2c]
mov dword [ecx + 8], eax
mov eax, dword [0x445820]
shl eax, 6
add eax, 0xdc4b4425
mov ecx, dword [0x443f98]
lea edx, [ecx + 1]
mov dword [0x443f98], edx
add ecx, 0x7fbaf3e0
cmp eax, ecx
jle 0x420853
mov dword [0x446a90], 0x7d2af6ff
jmp 0x42085d
add dword [0x4444b0], 0x5fa1ecb1
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x34]
push eax
call fcn.0040f56b
add esp, 8
test eax, eax
jg 0x4205d5
mov eax, dword [0x4474e0]
lea ecx, [eax - 1]
mov dword [0x4474e0], ecx
imul eax, dword [0x4456cc]
imul eax, eax, 0x693e2f31
mov dword [0x4460dc], eax
mov eax, dword [esp + 0x44]
push dword [eax + edi*4 - 4]
push ebp
lea eax, [esp + 0x38]
push eax
call fcn.00420e44
add esp, 0xc
mov esi, eax
test esi, esi
jne 0x420bf0
and dword [0x443bd8], 0x6cfdfb77
mov eax, dword [esp + 8]
shl eax, 5
push eax
mov ebx, eax
lea eax, [esp + 0x34]
push eax
call fcn.0040f1de
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
mov eax, dword [0x444bb0]
dec eax
mov dword [0x444bb0], eax
or dword [0x4434c0], eax
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x58]
push eax
push eax
call fcn.0041a6b6
add esp, 0xc
mov esi, eax
test esi, esi
jne 0x420bf0
mov eax, dword [0x4447c4]
or eax, 0x4a2c
xor eax, 0xb5d3
movzx ecx, word [0x4425da]
sub ecx, eax
mov word [0x4425da], cx
push 0
lea eax, [esp + 0x58]
push eax
call fcn.0040ed9e
add esp, 8
test eax, eax
jns 0x4209fc
imul eax, dword [0x447474], 0xc0284157
xor eax, 0x80f08493
imul eax, dword [0x4460e0]
mov dword [0x4460e0], eax
push ebp
lea eax, [esp + 0x34]
push eax
call fcn.0040f7c7
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
xor dword [0x446e30], 0x93fef7bd
push ebx
lea eax, [esp + 0x34]
push eax
call fcn.0040f1de
add esp, 8
mov esi, eax
test esi, esi
jne 0x420bf0
add dword [0x445ba8], 0x258887bf
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x58]
push eax
push eax
call fcn.0040b5df
add esp, 0xc
mov esi, eax
test esi, esi
jne 0x420bf0
movsx eax, word [0x441276]
shr eax, 6
mov word [0x441848], ax
mov eax, dword [esp + 0x44]
dec dword [eax + edi*4 - 4]
mov eax, dword [0x445e5c]
lea ecx, [eax + 1]
mov dword [0x445e5c], ecx
imul eax, eax, 0xe70901f
cmp eax, 0xc2effdfc
jg 0x4209fc
shl dword [0x443994], 9
mov eax, dword [0x443938]
movsx ecx, word [0x4417a8]
lea edx, [ecx - 1]
mov word [0x4417a8], dx
mov edx, 0xbd2c2368
sub edx, ecx
and eax, dword [0x445e18]
and eax, edx
mov dword [0x445e18], eax
mov eax, dword [esp + 0x1c]
cmp eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x20]
jg 0x4201b9
mov eax, dword [0x4434d8]
lea ecx, [eax + 1]
mov dword [0x4434d8], ecx
add eax, 0x843047e0
cmp eax, 0x6d64f70d
jl 0x420a63
imul eax, dword [0x4436d0], 0x35fafaa9
mov dword [0x4436d0], eax
jmp 0x420a7e
mov eax, dword [0x447428]
add eax, 0x8c34153c
movzx ecx, word [0x442a60]
imul ecx, eax
mov word [0x442a60], cx
mov ecx, dword [esp + 0x74]
mov edi, dword [esp + 0x14]
test ecx, ecx
je 0x420aeb
xor word [0x4414be], 0x99ba
lea eax, [esp + 0x3c]
push eax
push ecx
mov esi, ecx
call fcn.0040f7c7
add esp, 8
imul eax, dword [0x444bc8], 0x8cd07790
mov dword [0x444bc8], eax
mov eax, dword [esp + 0x80]
mov eax, dword [eax]
mov ecx, dword [esp + 0x7c]
imul eax, dword [ecx]
mov dword [esi], eax
movsx eax, word [0x44341e]
shr eax, 6
mov ecx, dword [0x4448ec]
imul ecx, ecx, 0xdf969386
or ecx, eax
movzx eax, word [0x441e06]
add eax, ecx
mov word [0x441e06], ax
and dword [0x445bd0], 0x9d184c19
mov esi, dword [esp + 0x78]
test esi, esi
je 0x420be8
movsx eax, word [0x442888]
or eax, 0xc6068d29
and dword [0x446df0], eax
push edi
lea edi, [esp + 0x58]
push edi
call fcn.00420c34
add esp, 8
and dword [0x444424], 0x2b9391cb
push edi
push esi
call fcn.0040f7c7
add esp, 8
movzx eax, word [0x442732]
dec eax
mov word [0x442732], ax
cwde
add dword [0x4435a8], eax
mov eax, dword [esp + 0x7c]
mov eax, dword [eax]
mov dword [esi], eax
imul eax, dword [0x4471e4], 0x479654aa
xor eax, 0x59b8bc51
cmp eax, dword [0x4453d0]
jle 0x420b7e
mov eax, dword [0x444e90]
cmp eax, 0x5e4f0946
jne 0x420b7e
and word [0x442b50], 0x4b66
push 0
push esi
call fcn.0040ed9e
add esp, 8
test eax, eax
jne 0x420b93
mov dword [esi], 1
mov eax, dword [0x4443f4]
lea ecx, [eax + 1]
mov dword [0x4443f4], ecx
and eax, 0x7b56baed
cmp eax, 0x3f09036d
jb 0x420be8
mov eax, dword [0x443c7c]
sar eax, 8
mov ecx, dword [0x444b18]
dec ecx
and eax, ecx
mov dword [0x444b18], ecx
and eax, 0x7e3019aa
cmp eax, 0x65719f36
ja 0x420bdf
mov ax, word [0x441a34]
dec word [0x442434]
jmp 0x420be8
and word [0x442182], 0xe4ce
mov ax, word [0x4412a6]
xor esi, esi
push 0
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x48]
push eax
push ebp
lea eax, [esp + 0x68]
push eax
call fcn.0040fcdc
add esp, 0x18
mov eax, dword [0x446674]
lea ecx, [eax - 1]
mov dword [0x446674], ecx
mov ecx, 0x15651d41
sub ecx, eax
add dword [0x445280], ecx
mov eax, esi
add esp, 0x60
pop esi
pop edi
pop ebx
pop ebp
ret