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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xb80
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
mov esi, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov ebx, 0x865a300b
mov dword [esp + 0xb78], eax
mov dword [esp + 0xb74], ecx
mov dword [esp + 0xb70], edx
mov dword [esp + 0xb6c], esi
mov dword [esp + 0xb68], edi
mov eax, dword [0x493380]
xor eax, 0x292eecbd
mov dword [0x493380], eax
mov eax, esp
mov dword [eax + 4], 8
mov dword [eax], 0xeb4
mov dword [esp + 0x148], ebx
call fcn.0040b080
mov dword [esp + 0xb64], eax
mov si, word [0x49135e]
movsx eax, si
sar eax, 9
mov ecx, dword [esp + 0x148]
cmp ecx, eax
jl 0x40fcc2
mov dword [0x494b50], 0xdc113c85
jmp 0x40fced
mov eax, 0xc1b307a2
mov cx, word [0x48f72c]
movsx edx, cx
cmp eax, edx
je 0x40fce8
mov eax, dword [0x492c00]
or eax, 0xffae68be
mov dword [0x492c00], eax
jmp 0x40fced
mov eax, dword [esp + 0xb64]
mov ecx, dword [esp + 0xb68]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.00455610
mov dword [esp + 0xb3c], eax
mov eax, dword [0x492b30]
or eax, 0x6418
mov si, word [0x48feb6]
mov cx, si
and ecx, eax
mov si, cx
mov word [0x48feb6], si
mov eax, dword [esp + 0xb64]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 8
call fcn.00427f90
mov eax, dword [0x491cb4]
imul eax, eax, 0x7141515f
mov dword [0x491cb4], eax
cmp dword [esp + 0xb3c], 0
jne 0x40fed0
mov ax, word [0x48f7dc]
movsx ecx, ax
mov edx, dword [0x491818]
add edx, ecx
mov dword [0x491818], edx
cmp dword [esp + 0xb78], 0
je 0x40fdf5
mov eax, dword [0x491a94]
xor eax, 0x9e8727f
cmp eax, 0xbbb4fd2e
jne 0x40fdd2
mov eax, dword [0x491f98]
shl eax, 6
and eax, 0x535bacce
cmp eax, 0xb78d9c14
jg 0x40fdcd
mov ax, word [0x4911aa]
mov cx, ax
and ecx, 0x7bb3
mov ax, cx
mov word [0x4911aa], ax
jmp 0x40fdd2
mov ecx, dword [esp + 0xb70]
call fcn.00408210
mov ecx, dword [0x494c68]
add ecx, 0x948d1be3
mov dword [0x494c68], ecx
jmp 0x4128e3
mov eax, dword [0x492318]
mov ecx, eax
inc ecx
mov dword [0x492318], ecx
mov dword [0x491c20], eax
mov eax, dword [esp + 0xb70]
mov ecx, dword [esp + 0xb6c]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.00425630
mov dword [esp + 0xb38], eax
mov si, word [0x48f9fa]
mov ax, si
dec eax
mov di, ax
mov word [0x48f9fa], di
movsx eax, si
add eax, 0xd3ef5942
sub eax, 0xc375e9fc
cmp eax, 0x80869200
jg 0x40fe65
mov eax, dword [0x492810]
or eax, 0xdb85bf22
mov dword [0x492810], eax
cmp dword [esp + 0xb38], 0
jg 0x40feb3
mov eax, dword [0x4926f8]
mov ecx, eax
inc ecx
mov dword [0x4926f8], ecx
add eax, 0x4cf6d83a
mov ecx, dword [0x494da8]
and eax, ecx
and eax, 0xdd4dfb74
mov dword [0x494da8], eax
mov ecx, dword [esp + 0xb70]
call fcn.00408210
mov eax, dword [0x493450]
and eax, 0x1109f819
mov dword [0x493450], eax
mov ax, word [0x48fb74]
mov cx, ax
add ecx, 0x890014b
mov ax, cx
mov word [0x48fb74], ax
jmp 0x4128e3
mov eax, 0xcd327f62
mov ecx, dword [0x4921e8]
xor ecx, 0xae47c18f
mov dword [0x4921e8], ecx
mov ecx, dword [0x493440]
imul ecx, ecx, 0x699a4808
xor ecx, 0x8f5c4558
cmp eax, ecx
jg 0x40ff23
mov ax, word [0x490766]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x490766], ax
movsx ecx, ax
and ecx, 0x4032acb1
mov dword [0x492674], ecx
mov eax, dword [0x493718]
mov ecx, eax
inc ecx
mov dword [0x493718], ecx
add eax, 0x9344aeec
mov ecx, dword [0x493e90]
and ecx, eax
mov dword [0x493e90], ecx
mov eax, dword [0x494a10]
xor eax, 0x96d59f55
mov dword [0x494a10], eax
mov eax, dword [0x492c20]
mov ecx, dword [0x491a7c]
or ecx, eax
mov dword [0x491a7c], ecx
mov eax, dword [0x494680]
xor eax, 0xc69aca17
mov dword [0x4935b0], eax
mov eax, dword [0x49279c]
dec eax
mov dword [0x49279c], eax
mov ecx, dword [0x4927bc]
sar ecx, 1
xor eax, ecx
mov ecx, dword [0x492ed8]
xor eax, ecx
mov dword [0x49246c], eax
lea ecx, [esp + 0x6bc]
call fcn.0040b800
mov ecx, dword [0x491af8]
not ecx
add ecx, 0x4d0967cc
or ecx, 0x7f5a537
mov edx, dword [0x494eac]
sub edx, ecx
mov dword [0x494eac], edx
mov ecx, dword [0x494344]
dec ecx
mov dword [0x494344], ecx
imul ecx, ecx, 0xa410bce0
mov edx, dword [0x4953d8]
and ecx, edx
mov si, word [0x48ff80]
mov dx, si
imul edx, ecx
mov si, dx
mov word [0x48ff80], si
mov ecx, dword [0x494c94]
dec ecx
mov dword [0x494c94], ecx
mov edx, dword [0x4944fc]
mov edi, edx
inc edi
mov dword [0x4944fc], edi
sub ecx, edx
add ecx, 0x7317403e
mov edx, dword [0x491ecc]
mov edi, edx
inc edi
mov dword [0x491ecc], edi
mov si, word [0x4904a8]
movsx edi, si
shl edi, 6
xor edx, edi
cmp ecx, edx
mov dword [esp + 0x144], eax
je 0x41006a
mov eax, dword [0x491be8]
not eax
add eax, 0x2a3debad
mov cx, word [0x490c76]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x490c76], cx
mov eax, 0xb1ccc69c
mov ecx, dword [0x493198]
mov edx, ecx
inc edx
mov dword [0x493198], edx
or ecx, 0xd7e8
mov si, word [0x48f9ac]
mov dx, si
and edx, ecx
mov si, dx
mov word [0x48f9ac], si
mov dword [esp + 0x234], 0
mov dword [esp + 0x230], 0
mov ecx, dword [0x493c80]
not ecx
mov si, word [0x48f758]
mov dx, si
imul edx, ecx
mov si, dx
mov word [0x48f758], si
mov ecx, dword [0x494518]
mov edx, ecx
inc edx
mov dword [0x494518], edx
or ecx, 0x79c31935
mov edx, dword [0x492d20]
and edx, ecx
mov dword [0x492d20], edx
mov dword [esp + 0x228], 0xffffffff
mov dword [esp + 0x224], 0xffffffff
mov ecx, dword [0x494958]
add ecx, 0x500bd04c
cmp eax, ecx
je 0x41012b
mov eax, dword [0x4933b4]
or eax, 0xda665efd
mov dword [0x4933b4], eax
mov eax, 0x2406ad5d
mov dword [esp + 0x220], 0x50
mov cx, word [0x48f8c6]
mov dx, cx
mov cx, word [0x490cc6]
mov si, cx
and esi, edx
mov cx, si
mov word [0x490cc6], cx
mov byte [esp + 0x21f], 0
mov edx, dword [0x494258]
and edx, 0xf3051d4f
mov dword [0x494258], edx
mov edx, esp
mov dword [edx], 0
mov dword [esp + 0x140], eax
call fcn.00451570
add eax, 0x258
adc edx, 0
mov dword [esp + 0x230], eax
mov dword [esp + 0x234], edx
mov eax, dword [0x493e74]
add eax, 0xf9d26cab
mov dword [0x493e74], eax
mov byte [esp + 0x6eb], 0
mov eax, dword [0x4955cc]
mov edx, dword [esp + 0x140]
cmp edx, eax
jle 0x4101e2
mov ax, word [0x49042a]
mov cx, ax
add ecx, 0x158043aa
mov ax, cx
mov word [0x49042a], ax
mov eax, dword [esp + 0xb68]
mov ecx, esp
mov dword [ecx], eax
call fcn.00452520
mov dword [esp + 0x244], eax
mov dx, word [0x4911b2]
movsx eax, dx
sar eax, 6
mov dx, word [0x491374]
movsx ecx, dx
sar ecx, 7
add ecx, 0x7220062e
cmp eax, ecx
jle 0x410239
mov ax, word [0x49013a]
mov cx, ax
add ecx, 0xb7e50b8c
mov ax, cx
mov word [0x49013a], ax
cmp dword [esp + 0x244], 0x7f
jle 0x4102b4
mov eax, 0x9f768bff
mov ecx, dword [0x49208c]
sar ecx, 1
cmp eax, ecx
jl 0x41027a
mov ax, word [0x490994]
mov cx, ax
or ecx, 0x4910
mov ax, cx
mov word [0x490994], ax
jmp 0x4102af
mov eax, dword [0x492cb4]
xor eax, 0xffffffff
or eax, 0x379d4b4e
cmp eax, 0x69f9b2dc
jg 0x4102aa
mov ax, word [0x490a84]
mov cx, ax
add ecx, 0xffe7dff0
mov ax, cx
mov word [0x490a84], ax
jmp 0x4102af
jmp 0x4127cb
mov ax, word [0x48fee6]
mov cx, ax
add ecx, 0x4b87ff55
mov ax, cx
mov word [0x48fee6], ax
mov ecx, dword [esp + 0xb68]
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0xa49]
mov dword [edx], ecx
call fcn.004556a0
mov si, word [0x491054]
mov cx, si
dec ecx
mov si, cx
mov word [0x491054], si
and ecx, 0x102a
or ecx, 0xa7d1
mov si, word [0x491698]
mov dx, si
sub edx, ecx
mov si, dx
mov word [0x491698], si
mov ecx, dword [esp + 0x244]
sub ecx, 1
mov dword [esp + 0x240], ecx
mov dword [esp + 0x13c], eax
mov eax, dword [esp + 0x240]
mov ecx, dword [esp + 0x244]
sub ecx, 6
cmp eax, ecx
jl 0x410507
mov eax, dword [0x4948d0]
xor eax, 0x1274af3f
mov dword [0x4948d0], eax
mov eax, dword [esp + 0x240]
movsx eax, byte [esp + eax + 0xa49]
cmp eax, 0x3a
jne 0x4104e2
mov ax, word [0x490060]
movsx ecx, ax
sar ecx, 0xa
add ecx, 0xa184b2e1
mov dword [0x4955a0], ecx
mov ecx, dword [esp + 0x240]
mov byte [esp + ecx + 0xa49], 0
mov ecx, dword [0x493728]
mov edx, dword [0x494ad8]
imul edx, edx, 0xe091921e
xor edx, 0x537d98c5
cmp ecx, edx
jg 0x4103e7
mov ax, word [0x491630]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x491630], dx
movsx ecx, ax
or ecx, 0xfafdecec
mov esi, dword [0x493c58]
sub esi, ecx
mov dword [0x493c58], esi
mov eax, 0x186050
mov ecx, dword [esp + 0x240]
mov dword [esp + 0x244], ecx
mov ecx, dword [0x492bc4]
mov dx, word [0x490d7c]
mov si, dx
dec esi
mov di, si
mov word [0x490d7c], di
movsx esi, dx
and esi, 0xbd446fe4
xor ecx, esi
cmp eax, ecx
jg 0x410467
mov eax, 0x5b5e630e
mov ecx, dword [0x492bcc]
mov edx, ecx
inc edx
mov dword [0x492bcc], edx
and ecx, 0xac6d5972
cmp eax, ecx
jg 0x410462
mov ax, word [0x490de8]
mov cx, ax
add ecx, 0x7eb05ed0
mov ax, cx
mov word [0x490de8], ax
jmp 0x410467
mov eax, 0x403c9f09
mov ecx, dword [esp + 0x240]
lea edx, [esp + 0xa49]
lea ecx, [ecx + edx + 1]
mov edx, esp
mov dword [edx], ecx
mov dword [esp + 0x138], eax
call fcn.004557fa
mov dword [esp + 0x220], eax
mov si, word [0x48f8ae]
movsx eax, si
not eax
mov ecx, dword [0x49321c]
sub eax, ecx
add eax, 0xa7327715
mov ecx, dword [esp + 0x138]
cmp ecx, eax
jle 0x4104dd
mov ax, word [0x491488]
movsx ecx, ax
shr ecx, 9
mov ax, word [0x4912fc]
mov dx, ax
or edx, ecx
mov ax, dx
mov word [0x4912fc], ax
jmp 0x410507
mov eax, dword [0x493c34]
and eax, 0xfd1414a7
mov dword [0x493c34], eax
mov eax, dword [esp + 0x240]
add eax, 0xffffffff
mov dword [esp + 0x240], eax
jmp 0x410335
mov ax, word [0x4902f0]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x4902f0], dx
movsx ecx, ax
mov esi, dword [0x495918]
dec esi
mov dword [0x495918], esi
sub ecx, esi
mov esi, dword [0x49529c]
add esi, ecx
mov dword [0x49529c], esi
mov dword [esp + 0x240], 0
mov eax, dword [esp + 0x240]
cmp eax, dword [esp + 0x244]
jg 0x41072f
mov ax, word [0x4902c2]
movsx ecx, ax
mov dword [0x492068], ecx
mov ecx, dword [esp + 0x240]
mov dl, byte [esp + ecx + 0xa49]
mov byte [esp + ecx + 0x95a], dl
mov ecx, dword [0x495500]
imul ecx, ecx, 0xa2be93f2
mov ax, word [0x490856]
mov si, ax
add esi, ecx
mov ax, si
mov word [0x490856], ax
mov ecx, dword [esp + 0x240]
movsx ecx, byte [esp + ecx + 0x95a]
cmp ecx, 0x2f
jne 0x4106a2
mov eax, dword [0x493a2c]
mov ecx, eax
inc ecx
mov dword [0x493a2c], ecx
mov dx, word [0x4908e0]
movsx ecx, dx
imul ecx, ecx, 0x6c392634
lea eax, [eax + ecx + 1]
mov ecx, dword [0x4957a4]
imul ecx, eax
mov dword [0x4957a4], ecx
mov eax, dword [esp + 0x240]
mov byte [esp + eax + 0x95a], 0
mov dword [0x494c1c], 0xf2ac64f5
mov eax, dword [esp + 0x240]
mov dword [esp + 0x23c], eax
mov eax, dword [esp + 0x23c]
cmp eax, dword [esp + 0x244]
jg 0x410694
mov eax, 0x8b2072c5
mov ecx, dword [0x494dcc]
dec ecx
mov dword [0x494dcc], ecx
or ecx, 0x86aeb74
cmp eax, ecx
jl 0x410651
mov eax, dword [0x494380]
or eax, 0x8f50e7f3
mov dword [0x493174], eax
mov eax, dword [esp + 0x23c]
mov cl, byte [esp + eax + 0xa49]
mov edx, dword [esp + 0x240]
sub eax, edx
mov byte [esp + eax + 0x6eb], cl
mov eax, dword [0x4921f4]
add eax, 0x895b2fb7
mov dword [0x4921f4], eax
mov eax, dword [esp + 0x23c]
add eax, 1
mov dword [esp + 0x23c], eax
jmp 0x41060e
mov word [0x4903c8], 0x7530
jmp 0x41072f
mov eax, 0x34898603
mov cx, word [0x4913f6]
movsx edx, cx
cmp eax, edx
jge 0x410714
mov eax, 0x93cc6fc9
mov ecx, dword [0x4921e8]
inc ecx
mov dword [0x4921e8], ecx
imul ecx, ecx, 0xfe3a0696
cmp eax, ecx
jl 0x41070f
mov ax, word [0x4912c4]
mov cx, ax
mov edx, ecx
inc edx
mov ax, dx
mov word [0x4912c4], ax
add ecx, 0x1ec3f0c8
xor ecx, 0x87bc
mov ax, word [0x48fce2]
mov dx, ax
imul edx, ecx
mov ax, dx
mov word [0x48fce2], ax
jmp 0x410714
jmp 0x410719
mov eax, dword [esp + 0x240]
add eax, 1
mov dword [esp + 0x240], eax
jmp 0x410546
lea eax, [esp + 0x6eb]
mov ecx, dword [0x491ad0]
or ecx, 0x97efbdef
mov dword [0x491ad0], ecx
mov ecx, esp
mov dword [ecx], eax
call fcn.00452520
mov ecx, dword [esp + 0xb6c]
mov edx, esp
mov dword [edx], ecx
mov dword [esp + 0x134], eax
call fcn.00452520
mov ecx, dword [esp + 0x134]
add ecx, eax
cmp ecx, 0x1ff
jbe 0x410791
mov eax, dword [0x494650]
xor eax, 0x16affd38
mov dword [0x494650], eax
jmp 0x4127cb
mov eax, 0xa3b67a09
mov ecx, dword [0x494aa8]
xor ecx, 0xffffffff
imul ecx, ecx, 0x17d2166b
cmp eax, ecx
jg 0x4107bc
mov eax, dword [0x4924b4]
and eax, 0x1668a48d
mov dword [0x4924b4], eax
mov eax, dword [esp + 0xb6c]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x6eb]
mov dword [ecx], eax
call fcn.004556b0
mov ecx, dword [0x494120]
xor ecx, 0xf1bfefff
mov dword [0x494120], ecx
mov dword [esp + 0x23c], 0
mov ecx, dword [0x493c4c]
xor ecx, 0x7c05b89f
mov edx, dword [0x492e38]
and edx, ecx
mov dword [0x492e38], edx
mov ecx, esp
mov dword [ecx + 4], 5
mov dword [ecx], 0x795d
mov dword [esp + 0x130], eax
call fcn.0040b080
mov dword [esp + 0xb60], eax
mov eax, dword [0x4948b4]
mov ecx, dword [0x492c1c]
sub ecx, eax
mov dword [0x492c1c], ecx
mov eax, dword [esp + 0xb60]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x6bc]
call fcn.004135b0
sub esp, 4
mov ecx, dword [0x494a8c]
shr ecx, 3
mov si, word [0x48f97e]
mov dx, si
imul edx, ecx
mov si, dx
mov word [0x48f97e], si
mov ecx, dword [esp + 0xb60]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 5
mov dword [esp + 0x12c], eax
call fcn.00427f90
mov eax, dword [0x492578]
imul eax, eax, 0xf0c32ff9
mov dword [0x492578], eax
mov eax, dword [esp + 0xb70]
mov ecx, eax
call fcn.0042b130
cmp eax, 0
je 0x410c07
mov eax, 0xdb1a8d07
mov ecx, dword [0x4940e8]
mov dx, word [0x48fb9a]
mov si, dx
inc esi
mov di, si
mov word [0x48fb9a], di
movsx esi, dx
mov ebx, dword [0x4958b8]
mov edi, ebx
inc edi
mov dword [0x4958b8], edi
imul esi, ebx
sub eax, esi
cmp ecx, eax
jle 0x410933
mov eax, dword [0x4926cc]
xor eax, 0xfc820c21
cmp eax, 0x402a8b3a
jne 0x41092e
mov eax, dword [0x495778]
inc eax
mov dword [0x495778], eax
mov ecx, dword [0x494e40]
and ecx, eax
mov dword [0x494e40], ecx
jmp 0x410933
mov eax, 0x3acab348
mov ecx, esp
mov dword [ecx + 4], 0xc
mov dword [ecx], 0x7b
mov dword [esp + 0x128], eax
call fcn.0040b080
mov dword [esp + 0xb5c], eax
mov eax, dword [0x491a68]
mov ecx, eax
dec ecx
mov dword [0x491a68], ecx
mov ecx, dword [0x491ec8]
add eax, ecx
mov ecx, dword [esp + 0x128]
cmp ecx, eax
jl 0x4109a4
mov eax, dword [0x494b48]
mov ecx, eax
inc ecx
mov dword [0x494b48], ecx
add eax, 0x3609f945
mov ecx, dword [0x495328]
or eax, ecx
or eax, 0x55f9b99d
mov dword [0x495328], eax
mov ecx, dword [esp + 0xb70]
mov eax, dword [esp + 0xb5c]
mov edx, esp
mov dword [edx], eax
lea eax, [esp + 0x208]
mov dword [esp + 0x124], ecx
mov ecx, eax
mov dword [esp + 0x120], eax
call fcn.004431d0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x120]
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x124]
mov dword [esp + 0x11c], eax
call fcn.0042a360
sub esp, 8
mov dword [esp + 0x240], eax
mov ecx, dword [esp + 0x120]
call fcn.00446d70
mov eax, dword [0x492204]
or eax, 0x9788ac19
mov dword [0x492204], eax
mov eax, dword [esp + 0xb5c]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0xc
call fcn.00427f90
mov eax, dword [0x49186c]
add eax, 0xbdc8f039
mov ecx, dword [0x4918a0]
or ecx, eax
mov dword [0x4918a0], ecx
cmp dword [esp + 0x240], 0
jne 0x410bf7
mov eax, 0x2a19090c
mov ecx, dword [0x494df4]
add ecx, 0x44c62d18
mov dword [0x494df4], ecx
mov dword [esp + 0x23c], 1
mov dx, word [0x490650]
mov cx, dx
xor ecx, 0x3220
mov dx, cx
mov word [0x490650], dx
mov ecx, dword [esp + 0xb70]
mov esi, esp
mov dword [esi], 0
mov dword [esp + 0x118], ecx
mov dword [esp + 0x114], eax
call fcn.0043ff20
sub esp, 4
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 4], 0xb
mov ecx, dword [esp + 0x118]
call fcn.004040a0
sub esp, 8
mov ecx, dword [0x494264]
mov esi, dword [0x49276c]
xor ecx, esi
not ecx
mov dword [0x49276c], ecx
mov ecx, esp
mov dword [ecx + 4], 6
mov dword [ecx], 0x5ecb
mov dword [esp + 0x110], eax
call fcn.0040b080
mov dword [esp + 0xb58], eax
mov dx, word [0x49118a]
movsx eax, dx
mov ecx, dword [0x49439c]
add eax, ecx
mov ecx, dword [esp + 0x114]
cmp ecx, eax
je 0x410b76
mov eax, dword [0x49573c]
sar eax, 7
imul eax, eax, 0xf5158ad4
mov ecx, 0x3918396c
sub ecx, eax
mov dx, word [0x490320]
movsx eax, dx
imul eax, eax, 0x3e65e299
xor eax, 0x73e6c163
cmp ecx, eax
jl 0x410b71
mov eax, dword [0x49259c]
xor eax, 0xb9ddd668
mov dword [0x49259c], eax
jmp 0x410b76
mov eax, dword [esp + 0xb58]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x6bc]
call fcn.004135b0
sub esp, 4
mov ecx, dword [0x4928b0]
mov edx, ecx
inc edx
mov dword [0x4928b0], edx
mov edx, 0x4b3f1302
sub edx, ecx
mov si, word [0x49070c]
mov cx, si
xor ecx, edx
mov si, cx
mov word [0x49070c], si
mov ecx, dword [esp + 0xb58]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 6
mov dword [esp + 0x10c], eax
call fcn.00427f90
mov eax, dword [0x491da8]
dec eax
mov dword [0x491da8], eax
mov ecx, dword [0x4933e4]
or eax, ecx
or eax, 0xa78449e8
mov dword [0x4933e4], eax
mov eax, dword [0x494a28]
imul eax, eax, 0x1748cb6
mov dword [0x494a28], eax
mov eax, 0x20500010
mov ecx, dword [0x493ebc]
mov edx, ecx
dec edx
mov dword [0x493ebc], edx
mov edx, 0xa790308f
sub edx, ecx
mov si, word [0x4916d2]
mov cx, si
sub ecx, edx
mov si, cx
mov word [0x4916d2], si
mov ecx, esp
lea edx, [esp + 0x6eb]
mov dword [ecx], edx
lea ecx, [esp + 0x1f4]
mov dword [esp + 0x108], ecx
mov dword [esp + 0x104], eax
call fcn.00404450
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x108]
mov dword [ecx], edx
lea ecx, [esp + 0x6bc]
mov dword [esp + 0x100], ecx
mov dword [esp + 0xfc], eax
call fcn.00442520
sub esp, 4
mov ecx, dword [esp + 0x108]
mov dword [esp + 0xf8], eax
call fcn.00416ab0
mov eax, dword [0x492ed0]
mov ecx, eax
dec ecx
mov dword [0x492ed0], ecx
xor eax, 0x364ce922
mov ecx, dword [0x4954ac]
or ecx, eax
mov dword [0x4954ac], ecx
mov eax, esp
mov dword [eax + 4], 0x32
mov dword [eax], 0x4b40
call fcn.0040b080
mov dword [esp + 0xb54], eax
mov eax, dword [0x494478]
shl eax, 9
mov ecx, dword [0x494f64]
sub ecx, eax
mov dword [0x494f64], ecx
mov eax, dword [esp + 0xb54]
mov ecx, esp
mov dword [ecx], eax
lea eax, [esp + 0x1e0]
mov ecx, eax
mov dword [esp + 0xf4], eax
call fcn.00404450
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xf4]
mov dword [ecx], edx
mov ecx, dword [esp + 0x100]
mov dword [esp + 0xf0], eax
call fcn.00442520
sub esp, 4
mov ecx, dword [esp + 0xf4]
mov dword [esp + 0xec], eax
call fcn.00416ab0
mov eax, dword [0x4920bc]
dec eax
mov dword [0x4920bc], eax
mov ecx, dword [esp + 0x104]
cmp ecx, eax
jne 0x410d71
mov eax, dword [0x492444]
mov ecx, dword [0x494450]
and ecx, eax
mov dword [0x494450], ecx
mov eax, 0xa0855fbf
mov ecx, dword [esp + 0xb54]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x32
mov dword [esp + 0xe8], eax
call fcn.00427f90
mov eax, dword [0x491c20]
add eax, 0x11c54d8d
mov dword [0x491c20], eax
mov eax, esp
lea ecx, [esp + 0x95a]
mov dword [eax], ecx
lea eax, [esp + 0x1cc]
mov ecx, eax
mov dword [esp + 0xe4], eax
call fcn.00404450
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xe4]
mov dword [ecx], edx
lea ecx, [esp + 0x6bc]
mov dword [esp + 0xe0], eax
call fcn.00442520
sub esp, 4
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0xdc], eax
call fcn.00416ab0
mov si, word [0x48f8a8]
mov ax, si
dec eax
mov si, ax
mov word [0x48f8a8], si
movsx eax, si
mov ecx, dword [0x493584]
add eax, ecx
mov ecx, dword [esp + 0xe8]
cmp ecx, eax
jge 0x410e44
mov eax, dword [0x493bd0]
sar eax, 4
and eax, 0x63be0461
mov ecx, dword [0x494340]
add ecx, eax
mov dword [0x494340], ecx
cmp dword [esp + 0x23c], 0
je 0x4110f8
mov eax, 0xf97a40be
mov ecx, dword [0x493dc8]
cmp eax, ecx
jl 0x410ea0
mov eax, dword [0x494074]
mov ecx, dword [0x492958]
dec ecx
mov dword [0x492958], ecx
imul eax, ecx
mov dx, word [0x491332]
movsx ecx, dx
and eax, ecx
cmp eax, 0xfd301f41
jle 0x410e9b
mov dword [0x491de0], 0xfcf9f35b
jmp 0x410ea0
mov eax, 0x1f1e15aa
mov ecx, esp
mov dword [ecx + 4], 0x44
mov dword [ecx], 0x7964
mov dword [esp + 0xd8], eax
call fcn.0040b080
mov dword [esp + 0xb50], eax
mov dx, word [0x4910ac]
movsx eax, dx
shl eax, 5
mov ecx, dword [esp + 0xd8]
cmp ecx, eax
jge 0x410f34
mov eax, 0xcf80bdf0
mov ecx, dword [0x491fec]
mov edx, ecx
inc edx
mov dword [0x491fec], edx
cmp eax, ecx
jg 0x410f2f
mov ax, word [0x49024c]
movsx ecx, ax
mov edx, dword [0x49492c]
inc edx
mov dword [0x49492c], edx
imul ecx, edx
shl ecx, 5
xor ecx, 0x1afa0624
mov edx, dword [0x494958]
add edx, ecx
mov dword [0x494958], edx
jmp 0x410f34
mov eax, dword [esp + 0xb50]
mov ecx, esp
mov dword [ecx], eax
lea eax, [esp + 0x1b8]
mov ecx, eax
mov dword [esp + 0xd4], eax
call fcn.00404450
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xd4]
mov dword [ecx], edx
lea ecx, [esp + 0x6bc]
mov dword [esp + 0xd0], eax
call fcn.00442520
sub esp, 4
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0xcc], eax
call fcn.00416ab0
mov eax, dword [0x494294]
add eax, 0xcfe3799c
mov ecx, dword [0x4945bc]
sub ecx, eax
mov dword [0x4945bc], ecx
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 0x2ec6
call fcn.0040b080
mov dword [esp + 0xb4c], eax
mov dword [0x4956a4], 0x57f7b3b9
mov eax, dword [esp + 0xb50]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x44
call fcn.00427f90
mov si, word [0x48fc9a]
movsx eax, si
mov ecx, dword [0x4948a0]
and eax, ecx
and eax, 0xde8de142
mov dword [0x4948a0], eax
mov ecx, dword [esp + 0xb70]
call fcn.0042b130
mov ecx, dword [esp + 0xb4c]
mov edx, esp
mov dword [edx + 8], eax
mov dword [edx + 4], ecx
lea eax, [esp + 0x24d]
mov dword [edx], eax
call fcn.0045592e
mov si, word [0x491434]
movsx ecx, si
xor ecx, 0xd0828952
cmp ecx, 0xbbeead29
mov dword [esp + 0xc8], eax
jg 0x411056
mov eax, dword [0x4957c8]
add eax, 0xa0804928
mov dword [0x4957c8], eax
mov eax, dword [esp + 0xb4c]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.00427f90
mov eax, dword [0x491bac]
add eax, 0x50269d55
mov ecx, dword [0x4935e8]
imul ecx, eax
mov dword [0x4935e8], ecx
mov eax, esp
lea ecx, [esp + 0x24d]
mov dword [eax], ecx
lea eax, [esp + 0x1a4]
mov ecx, eax
mov dword [esp + 0xc4], eax
call fcn.00404450
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xc4]
mov dword [ecx], edx
lea ecx, [esp + 0x6bc]
mov dword [esp + 0xc0], eax
call fcn.00442520
sub esp, 4
mov ecx, dword [esp + 0xc4]
mov dword [esp + 0xbc], eax
call fcn.00416ab0
mov eax, dword [0x493dd0]
sar eax, 1
imul eax, eax, 0x6e6e17be
mov ecx, dword [0x4939d4]
xor ecx, eax
mov dword [0x4939d4], ecx
mov eax, 0xf6f2bff7
mov ecx, dword [0x49189c]
or ecx, 0x35496b28
cmp eax, ecx
je 0x41111b
mov dword [0x4935e0], 0x546dbc64
mov eax, 0xaa978bc
mov ecx, 0x3d0906be
mov edx, esp
mov dword [edx + 4], 5
mov dword [edx], 0x1b50
mov dword [esp + 0xb8], eax
mov dword [esp + 0xb4], ecx
call fcn.0040b080
mov dword [esp + 0xb48], eax
mov eax, dword [0x493070]
dec eax
mov dword [0x493070], eax
mov ecx, dword [0x491d10]
mov edx, dword [esp + 0xb4]
sub edx, ecx
xor eax, edx
mov ecx, dword [esp + 0xb8]
cmp ecx, eax
je 0x41119f
mov eax, dword [0x495088]
inc eax
mov dword [0x495088], eax
or eax, 0x4197
mov cx, word [0x49136a]
mov dx, cx
and edx, eax
mov cx, dx
mov word [0x49136a], cx
mov eax, dword [esp + 0xb48]
mov ecx, esp
mov dword [ecx], eax
lea eax, [esp + 0x190]
mov ecx, eax
mov dword [esp + 0xb0], eax
call fcn.00404450
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xb0]
mov dword [ecx], edx
lea ecx, [esp + 0x6bc]
mov dword [esp + 0xac], eax
call fcn.00442520
sub esp, 4
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0xa8], eax
call fcn.00416ab0
mov eax, dword [0x494ef4]
mov ecx, eax
dec ecx
mov dword [0x494ef4], ecx
imul eax, eax, 0x84dddac7
mov ecx, dword [0x494028]
add ecx, eax
mov dword [0x494028], ecx
mov eax, dword [esp + 0xb48]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 5
call fcn.00427f90
mov eax, dword [0x494440]
and eax, 0x9f593aef
mov dword [0x494440], eax
cmp dword [esp + 0x23c], 0
je 0x4112aa
mov eax, dword [0x494e28]
or eax, 0x7fdfbffe
cmp eax, 0xc6d39d77
jle 0x411270
mov eax, dword [0x49527c]
and eax, 0xb0f737e0
mov dword [0x49527c], eax
mov eax, dword [esp + 0xb70]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x6bc]
call fcn.00442520
sub esp, 4
mov dx, word [0x490fae]
movsx ecx, dx
shl ecx, 5
or ecx, 0xdc3ed608
mov dword [0x49455c], ecx
mov dword [esp + 0xa4], eax
mov eax, dword [0x493c20]
shr eax, 5
mov ecx, 0x281deba5
sub ecx, eax
and ecx, 0x211c7b6
mov eax, dword [0x493b04]
add eax, ecx
mov dword [0x493b04], eax
mov eax, dword [0x48f4cc]
mov ecx, esp
lea edx, [esp + 0x95a]
mov dword [ecx], edx
call eax
sub esp, 4
mov dword [esp + 0x248], eax
mov dword [0x49435c], 0x6f0882c
cmp dword [esp + 0x248], 0
jne 0x41130e
mov dword [0x4925cc], 0x40450500
jmp 0x4127cb
mov eax, dword [0x493d1c]
add eax, 0x5eb03817
mov dword [0x493d1c], eax
xorps xmm0, xmm0
movaps xmmword [esp + 0x6d0], xmm0
mov eax, dword [0x494b28]
mov ecx, dword [0x4933c8]
shl ecx, 7
add eax, ecx
mov dx, word [0x48f6f2]
mov cx, dx
dec ecx
mov si, cx
mov word [0x48f6f2], si
movsx ecx, dx
or eax, ecx
mov ecx, dword [0x4920e0]
dec ecx
mov dword [0x4920e0], ecx
imul ecx, ecx, 0xad9c4246
xor ecx, 0xb1a68449
cmp eax, ecx
jge 0x411383
mov eax, dword [0x491cf4]
imul eax, eax, 0x57426aaf
mov dword [0x491cf4], eax
mov word [esp + 0x6d0], 2
mov eax, dword [0x492d38]
and eax, 0xebebe7fd
mov dword [0x492d38], eax
mov eax, dword [0x48f4d4]
mov ecx, dword [0x48f4d8]
mov edx, dword [esp + 0x248]
mov edx, dword [edx + 0xc]
mov edx, dword [edx]
mov edx, dword [edx]
mov dword [esp + 0x18c], edx
mov edx, dword [esp + 0x18c]
mov esi, esp
mov dword [esi], edx
mov dword [esp + 0xa0], eax
call ecx
sub esp, 4
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [esp + 0xa0]
call eax
sub esp, 4
mov dword [esp + 0x6d4], eax
mov eax, dword [0x4946ac]
and eax, 0x75b319cd
mov dword [0x4946ac], eax
mov eax, dword [0x48f4d0]
movzx ecx, word [esp + 0x220]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov word [esp + 0x6d2], ax
mov ecx, dword [0x4950a8]
or ecx, 0x41421080
mov dword [0x4950a8], ecx
cmp dword [esp + 0xb74], 0
je 0x411621
mov eax, 0x4fd71453
mov ecx, dword [0x493430]
and ecx, 0xd8b89b83
and ecx, 0xd80768b
cmp eax, ecx
je 0x411476
mov eax, dword [0x4951f8]
mov cx, word [0x4907b4]
mov dx, cx
or edx, eax
mov cx, dx
mov word [0x4907b4], cx
jmp 0x41149f
mov eax, dword [0x492884]
mov ecx, eax
dec ecx
mov dword [0x492884], ecx
mov dx, word [0x4902c4]
mov cx, dx
xor eax, ecx
xor eax, 0x7bf1
mov dx, ax
mov word [0x4902c4], dx
mov eax, dword [esp + 0xb74]
mov ecx, 0x10624dd3
mul ecx
shr edx, 6
mov eax, esp
mov dword [eax + 4], edx
lea ecx, [esp + 0x6d0]
mov dword [eax], ecx
call fcn.00449380
mov dword [esp + 0x6e4], eax
mov eax, dword [0x495100]
xor eax, 0xffffffff
or eax, 0x37171dbf
cmp eax, 0x504870a0
jl 0x4114fe
mov eax, dword [0x4924cc]
mov ecx, eax
dec ecx
mov dword [0x4924cc], ecx
mov ecx, dword [0x494c20]
or ecx, eax
mov dword [0x494c20], ecx
cmp dword [esp + 0x6e4], 0
jge 0x41151b
mov dword [0x491bd8], 0x45908b24
jmp 0x4127cb
mov eax, 0xca70f285
mov ecx, dword [0x49333c]
shl ecx, 9
add ecx, 0x41682471
mov dx, word [0x491278]
mov si, dx
sub esi, ecx
mov dx, si
mov word [0x491278], dx
mov ecx, dword [0x48f4ec]
mov esi, dword [esp + 0x6e4]
mov edi, esp
lea ebx, [esp + 0xb74]
mov dword [edi + 0xc], ebx
mov dword [edi], esi
mov dword [edi + 0x10], 4
mov dword [edi + 8], 0x1006
mov dword [edi + 4], 0xffff
mov dword [esp + 0x9c], eax
call ecx
sub esp, 0x14
mov ecx, dword [0x49558c]
mov esi, dword [esp + 0x9c]
cmp esi, ecx
mov dword [esp + 0x98], eax
jg 0x4115ba
mov ax, word [0x490116]
mov cx, ax
xor ecx, 0x41ce
mov ax, cx
mov word [0x490116], ax
jmp 0x4115c4
mov dword [0x493bc4], 0x4ddf060c
mov eax, dword [0x48f4ec]
mov ecx, dword [esp + 0x6e4]
mov edx, esp
lea esi, [esp + 0xb74]
mov dword [edx + 0xc], esi
mov dword [edx], ecx
mov dword [edx + 0x10], 4
mov dword [edx + 8], 0x1005
mov dword [edx + 4], 0xffff
call eax
sub esp, 0x14
mov ecx, dword [0x493b24]
shr ecx, 5
or ecx, 0xfee9112a
mov edx, dword [0x491a04]
add edx, ecx
mov dword [0x491a04], edx
mov dword [esp + 0x94], eax
jmp 0x41178d
mov eax, 0xb1f2ce97
mov ecx, dword [0x493c80]
mov edx, dword [0x494e28]
or ecx, edx
or ecx, 0x66fda0e2
mov dword [0x494e28], ecx
mov ecx, dword [0x48f4f0]
mov edx, esp
mov dword [edx + 8], 6
mov dword [edx + 4], 1
mov dword [edx], 2
mov dword [esp + 0x90], eax
call ecx
sub esp, 0xc
mov dword [esp + 0x6e4], eax
mov eax, dword [0x494bbc]
sar eax, 6
imul eax, eax, 0xc5894dfa
mov ecx, dword [esp + 0x90]
cmp ecx, eax
jne 0x41169b
mov eax, dword [0x492e68]
and eax, 0xcfffebfb
mov dword [0x492e68], eax
cmp dword [esp + 0x6e4], 0xffffffff
jne 0x4116cc
mov ax, word [0x490c6c]
movsx ecx, ax
or ecx, 0x4ba445c1
mov edx, dword [0x49219c]
imul edx, ecx
mov dword [0x49219c], edx
jmp 0x4127cb
lea eax, [esp + 0x6d0]
mov ecx, dword [0x491b70]
or ecx, 0xbf77c7e5
mov dword [0x491b70], ecx
mov ecx, dword [0x48f4c8]
mov edx, dword [esp + 0x6e4]
mov esi, esp
mov dword [esi + 4], eax
mov dword [esi], edx
mov dword [esi + 8], 0x10
call ecx
sub esp, 0xc
cmp eax, 0xffffffff
jne 0x411774
mov eax, dword [0x495144]
shl eax, 7
mov ecx, 0xc9dcdc38
sub ecx, eax
xor ecx, 0x179aab59
mov eax, dword [0x493c1c]
xor eax, 0xffffffff
cmp ecx, eax
jle 0x41176f
mov eax, dword [0x492960]
dec eax
mov dword [0x492960], eax
imul eax, eax, 0xbb6eee34
and eax, 0x6120d310
mov cx, word [0x490b28]
movsx edx, cx
cmp eax, edx
jg 0x41176a
mov eax, dword [0x494d88]
and eax, 0x59301c45
mov dword [0x494d88], eax
jmp 0x41176f
jmp 0x41275f
mov eax, dword [0x4920dc]
imul eax, eax, 0x589ced47
mov ecx, dword [0x494878]
add ecx, eax
mov dword [0x494878], ecx
lea eax, [esp + 0x6bc]
mov dword [0x491f1c], 0xc3f3f36d
mov ecx, dword [0x48f4e8]
lea edx, [esp + 0x6bc]
mov dword [esp + 0x8c], ecx
mov ecx, edx
mov dword [esp + 0x88], eax
mov dword [esp + 0x84], edx
call fcn.0042b130
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x80], eax
call fcn.00403de0
mov ecx, dword [esp + 0x6e4]
mov edx, esp
mov esi, dword [esp + 0x80]
mov dword [edx + 8], esi
mov dword [edx + 4], eax
mov dword [edx], ecx
mov dword [edx + 0xc], 0
mov eax, dword [esp + 0x8c]
call eax
sub esp, 0x10
mov dword [esp + 0x6e0], eax
mov eax, dword [0x492fa8]
and eax, 0xefd277b7
mov dword [0x492fa8], eax
mov eax, dword [esp + 0x6e0]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x7c], eax
call fcn.0042b130
mov ecx, dword [esp + 0x7c]
cmp ecx, eax
jae 0x411852
mov eax, dword [0x4945b8]
xor eax, 0x6fe39312
mov dword [0x4945b8], eax
jmp 0x41275f
mov ax, word [0x490f32]
mov cx, ax
xor ecx, 0x8dd
mov ax, cx
mov word [0x490f32], ax
mov ecx, dword [esp + 0xb70]
call fcn.00408210
mov ecx, dword [0x492e00]
and ecx, 0xdae5f5f4
or ecx, 0x798b468
cmp ecx, 0x833ab162
jg 0x4118a3
mov eax, dword [0x492a9c]
xor eax, 0xa148020
mov dword [0x492a9c], eax
jmp 0x4118a8
mov eax, dword [0x493338]
not eax
or eax, 0xd82d7c00
mov ecx, dword [0x495858]
sub ecx, eax
mov dword [0x495858], ecx
mov eax, dword [0x48f4e0]
mov ecx, dword [esp + 0x6e4]
mov edx, esp
lea esi, [esp + 0x24d]
mov dword [edx + 4], esi
mov dword [edx], ecx
mov dword [edx + 0xc], 0
mov dword [edx + 8], 0x400
call eax
sub esp, 0x10
mov dword [esp + 0x6e0], eax
mov eax, dword [0x493ca0]
or eax, 0x83cd9f77
mov dword [0x493ca0], eax
cmp dword [esp + 0x6e0], 0
jle 0x411936
mov eax, dword [esp + 0x230]
mov ecx, dword [esp + 0x234]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], eax
call fcn.00401ca0
cmp eax, 0
je 0x411945
mov dword [0x492f68], 0x4c37af26
jmp 0x412564
mov ax, word [0x490784]
movsx ecx, ax
shl ecx, 9
mov ax, word [0x49125c]
movsx edx, ax
shl edx, 0xa
cmp ecx, edx
je 0x4119be
mov eax, dword [0x49307c]
mov ecx, eax
dec ecx
mov dword [0x49307c], ecx
mov ecx, dword [0x4924d0]
mov edx, ecx
dec edx
mov dword [0x4924d0], edx
lea eax, [eax + ecx - 0x30ec5f87]
mov ecx, dword [0x495270]
sar ecx, 0xa
imul ecx, ecx, 0x9264665a
cmp eax, ecx
jl 0x4119b9
mov eax, dword [0x495344]
inc eax
mov dword [0x495344], eax
mov ecx, dword [0x4932b0]
and ecx, eax
mov dword [0x4932b0], ecx
jmp 0x4119be
mov eax, 0x108fb6c3
mov ecx, dword [esp + 0xb70]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], eax
call fcn.0042b130
mov ecx, dword [esp + 0x6e0]
add eax, ecx
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x78]
call fcn.00443be0
sub esp, 8
mov eax, dword [0x493ca0]
dec eax
mov dword [0x493ca0], eax
and eax, 0xfb102da0
and eax, 0xbec8292d
mov ecx, dword [esp + 0x74]
cmp ecx, eax
jl 0x411a28
mov eax, dword [0x492b9c]
imul eax, eax, 0xbbb65880
mov dword [0x492b9c], eax
mov eax, dword [esp + 0xb70]
mov ecx, eax
call fcn.00436b90
cmp eax, 0
jne 0x411a54
mov eax, dword [0x492030]
imul eax, eax, 0x61a8b0c
mov dword [0x492030], eax
jmp 0x412564
mov eax, 0x2c30910
mov ecx, dword [0x4920cc]
cmp eax, ecx
jle 0x411a7b
mov eax, dword [0x492964]
or eax, 0xb8df0ed4
mov dword [0x492964], eax
jmp 0x411a98
mov ax, word [0x490f9a]
movsx ecx, ax
xor ecx, 0xbf39bf7f
mov edx, dword [0x4919a4]
and edx, ecx
mov dword [0x4919a4], edx
mov ecx, dword [esp + 0xb70]
mov eax, dword [esp + 0x6e0]
mov edx, esp
mov dword [edx + 4], eax
lea eax, [esp + 0x24d]
mov dword [edx], eax
call fcn.00440960
sub esp, 8
mov dword [0x4952ec], 0x19afba51
cmp dword [esp + 0x228], 0
mov dword [esp + 0x70], eax
jge 0x411fd0
mov ax, word [0x49022a]
mov cx, ax
and ecx, 0x5e0b
mov ax, cx
mov word [0x49022a], ax
mov ecx, esp
mov dword [ecx + 4], 5
mov dword [ecx], 0x1b50
call fcn.0040b080
mov dword [esp + 0xb44], eax
mov eax, dword [0x493558]
mov ecx, eax
inc ecx
mov dword [0x493558], ecx
and eax, 0x2aa63b2d
cmp eax, 0xa020a008
jne 0x411b78
mov eax, 0xd645a400
mov ecx, dword [0x493da0]
shl ecx, 7
add ecx, 0xa036b135
mov edx, dword [0x4929a0]
mov esi, edx
dec esi
mov dword [0x4929a0], esi
and ecx, edx
cmp eax, ecx
jl 0x411b73
mov ax, word [0x49140e]
movsx ecx, ax
and ecx, 0x3d898bec
mov edx, dword [0x49523c]
sub edx, ecx
mov dword [0x49523c], edx
jmp 0x411b78
mov eax, 0x7e7aafff
mov ecx, dword [esp + 0xb70]
mov edx, dword [esp + 0xb44]
mov esi, esp
mov dword [esi], edx
lea edx, [esp + 0x178]
mov dword [esp + 0x6c], ecx
mov ecx, edx
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], edx
call fcn.004431d0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x64]
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x60], eax
call fcn.0042a360
sub esp, 8
mov dword [esp + 0x228], eax
mov ecx, dword [esp + 0x64]
call fcn.00446d70
mov di, word [0x491362]
mov ax, di
mov ecx, dword [0x495854]
mov edx, ecx
inc edx
mov dword [0x495854], edx
sub eax, ecx
mov di, word [0x4911fa]
mov cx, di
lea eax, [eax + ecx - 0x46c7ecfc]
mov di, ax
mov word [0x4911fa], di
mov eax, dword [esp + 0xb44]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 5
call fcn.00427f90
mov eax, dword [0x492618]
mov ecx, dword [esp + 0x68]
cmp ecx, eax
je 0x411c94
mov eax, 0x341eb009
mov ecx, dword [0x4948f8]
sar ecx, 6
add ecx, 0x8839a4d9
xor ecx, 0xa502d123
mov dx, word [0x490a7a]
movsx esi, dx
mov edi, dword [0x49316c]
mov ebx, edi
dec ebx
mov dword [0x49316c], ebx
sub eax, edi
xor esi, eax
cmp ecx, esi
jge 0x411c8f
mov eax, dword [0x49310c]
sar eax, 5
mov ecx, dword [0x4952dc]
imul ecx, eax
mov dword [0x4952dc], ecx
jmp 0x411cb9
mov ax, word [0x490c42]
mov cx, ax
inc ecx
mov ax, cx
mov word [0x490c42], ax
movsx ecx, ax
mov edx, dword [0x4941b8]
imul edx, ecx
mov dword [0x4941b8], edx
cmp dword [esp + 0x228], 0
jl 0x411fa5
mov eax, 0x71518f90
mov ecx, dword [0x492d8c]
mov edx, ecx
dec edx
mov dword [0x492d8c], edx
imul ecx, ecx, 0x76590a26
mov edx, dword [0x491a88]
imul ecx, edx
cmp eax, ecx
je 0x411d0f
mov ax, word [0x48fe76]
mov cx, ax
xor ecx, 0x2dca
mov ax, cx
mov word [0x48fe76], ax
jmp 0x411d1e
mov eax, dword [0x494dd8]
or eax, 0x9f1b02b7
mov dword [0x494dd8], eax
mov eax, 0x69ba9efb
mov ecx, dword [esp + 0x228]
add ecx, 4
mov dword [esp + 0x228], ecx
mov dx, word [0x490238]
mov cx, dx
inc ecx
mov dx, cx
mov word [0x490238], dx
movsx ecx, dx
sub eax, ecx
cmp eax, 0x78d8fdf2
jge 0x411d84
mov eax, dword [0x493bd8]
dec eax
mov dword [0x493bd8], eax
or eax, 0x8078
mov cx, word [0x490f1a]
mov dx, cx
add edx, eax
mov cx, dx
mov word [0x490f1a], cx
jmp 0x411d9c
mov ax, word [0x4907a2]
mov cx, ax
or ecx, 0xc41b
mov ax, cx
mov word [0x4907a2], ax
mov eax, 0x2d95e2a2
mov ecx, dword [esp + 0xb70]
mov edx, esp
mov dword [edx], ecx
mov dword [esp + 0x5c], eax
call fcn.0044ee20
mov dword [esp + 0x224], eax
mov si, word [0x4904ce]
movsx eax, si
or eax, 0x8a13668d
mov ecx, dword [esp + 0x5c]
cmp ecx, eax
jle 0x411dfa
mov ax, word [0x490b00]
mov cx, ax
add ecx, 0x2984b91d
mov ax, word [0x490374]
mov dx, ax
sub edx, ecx
mov ax, dx
mov word [0x490374], ax
cmp dword [esp + 0x224], 0
jge 0x411f82
mov eax, 0x90e46edf
mov cx, word [0x490aba]
mov dx, cx
imul edx, edx, 0xe0bc1ac5
mov cx, dx
mov word [0x490aba], cx
mov edx, esp
mov dword [edx + 4], 0xb
mov dword [edx], 0x1146
mov dword [esp + 0x58], eax
call fcn.0040b080
mov dword [esp + 0xb40], eax
mov eax, dword [0x4953c8]
shl eax, 5
mov edx, dword [esp + 0x58]
cmp edx, eax
jne 0x411e8c
mov eax, dword [0x4925d4]
and eax, 0x33916d69
cmp eax, 0x62ff98d1
jle 0x411e87
mov eax, dword [0x493b94]
xor eax, 0xb35218f6
mov ecx, dword [0x493828]
sub ecx, eax
mov dword [0x493828], ecx
jmp 0x411e8c
mov ecx, dword [esp + 0xb70]
mov eax, dword [esp + 0xb40]
mov edx, esp
mov dword [edx], eax
lea eax, [esp + 0x164]
mov dword [esp + 0x54], ecx
mov ecx, eax
mov dword [esp + 0x50], eax
call fcn.004431d0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x4c], eax
call fcn.0042a360
sub esp, 8
mov dword [esp + 0x6e0], eax
mov ecx, dword [esp + 0x50]
call fcn.00446d70
mov eax, dword [0x4956a4]
xor eax, 0x7ffdefe3
mov dword [0x4956a4], eax
mov eax, dword [esp + 0xb40]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0xb
call fcn.00427f90
mov si, word [0x49036c]
mov ax, si
inc eax
mov si, ax
mov word [0x49036c], si
movsx eax, si
imul eax, eax, 0x822182e9
add eax, 0x33742143
mov ecx, dword [0x494450]
and ecx, eax
mov dword [0x494450], ecx
cmp dword [esp + 0x6e0], 0
jl 0x411f5f
mov eax, dword [0x494c88]
xor eax, 0x3f96789f
mov dword [0x494c88], eax
jmp 0x412564
mov eax, dword [0x493290]
not eax
mov ecx, dword [0x491f84]
imul ecx, ecx, 0xf73a0ef9
or eax, ecx
mov ecx, dword [0x491e38]
xor ecx, eax
mov dword [0x491e38], ecx
mov eax, dword [0x4925e4]
sar eax, 9
mov ecx, dword [0x4934c0]
lea eax, [eax + ecx - 0x29a677cc]
mov ecx, dword [0x492f6c]
xor ecx, eax
mov dword [0x492f6c], ecx
mov ax, word [0x49169e]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x49169e], ax
movsx ecx, ax
mov edx, 0x23da82e7
sub edx, ecx
mov ecx, dword [0x492490]
or ecx, edx
mov dword [0x492490], ecx
mov ax, word [0x491516]
mov cx, ax
add ecx, 0x7d4a249c
mov ax, cx
mov word [0x491516], ax
cmp dword [esp + 0x224], 0
jl 0x412065
mov eax, dword [0x491d14]
add eax, 0xffcbcf7e
mov dword [0x491d14], eax
mov eax, dword [esp + 0xb70]
mov ecx, eax
call fcn.0042b130
sub eax, dword [esp + 0x228]
cmp eax, dword [esp + 0x224]
jb 0x41203b
mov eax, dword [0x492520]
and eax, 0xdc9fae3f
mov dword [0x492520], eax
jmp 0x412564
mov ax, word [0x490c32]
mov cx, ax
shl ecx, 9
mov edx, dword [0x492d28]
not edx
add ecx, edx
mov ax, word [0x49005c]
mov dx, ax
sub edx, ecx
mov ax, dx
mov word [0x49005c], ax
mov eax, dword [0x491bc4]
imul eax, eax, 0x4404ec00
mov dword [0x491bc4], eax
cmp dword [esp + 0xb78], 0
je 0x4123f8
test byte [esp + 0x21f], 1
jne 0x4123f8
mov eax, 0xa6a51375
mov ecx, dword [0x494d70]
xor ecx, 0xffffffff
cmp eax, ecx
jge 0x4120d5
mov eax, 0xd067112d
mov ecx, dword [0x492048]
inc ecx
mov dword [0x492048], ecx
cmp eax, ecx
jl 0x4120d0
mov eax, dword [0x495648]
add eax, 0x234a03be
mov dword [0x4940ac], eax
jmp 0x4120d5
mov eax, dword [esp + 0xb70]
mov ecx, eax
call fcn.0042b130
cmp eax, 0x4000
jbe 0x4123e1
mov eax, dword [0x492034]
xor eax, 0xeff8570c
mov dword [0x492034], eax
mov byte [esp + 0x21f], 1
mov eax, dword [0x493a88]
dec eax
mov dword [0x493a88], eax
mov cx, word [0x48fbb2]
movsx edx, cx
sar edx, 7
and eax, edx
mov edx, dword [0x493c00]
xor eax, edx
mov edx, dword [0x493d48]
xor edx, eax
mov dword [0x493d48], edx
mov eax, dword [esp + 0xb70]
mov edx, esp
mov dword [edx], eax
lea ecx, [esp + 0x150]
call fcn.00427c20
sub esp, 4
mov ecx, dword [0x4958ec]
shl ecx, 5
cmp ecx, 0x7854018d
mov dword [esp + 0x48], eax
jle 0x412188
mov eax, dword [0x494514]
sar eax, 1
imul eax, eax, 0x25bbf98a
mov ecx, dword [0x4953fc]
and ecx, eax
mov dword [0x4953fc], ecx
jmp 0x4121dc
mov eax, 0x44a68e4e
mov ecx, dword [0x4938d0]
inc ecx
mov dword [0x4938d0], ecx
add ecx, 0xf2397740
cmp eax, ecx
jge 0x4121d7
mov ax, word [0x4900d2]
mov cx, ax
mov edx, ecx
inc edx
mov ax, dx
mov word [0x4900d2], ax
add ecx, 0xf9ac7d35
mov ax, word [0x48fc9a]
mov dx, ax
xor edx, ecx
mov ax, dx
mov word [0x48fc9a], ax
jmp 0x4121dc
cmp dword [esp + 0x228], 0
jl 0x412257
mov ax, word [0x490c98]
mov cx, ax
imul ecx, ecx, 0xc2090b2e
mov ax, cx
mov word [0x490c98], ax
mov ecx, dword [esp + 0x228]
mov edx, esp
mov dword [edx], 0
lea edx, [esp + 0x150]
mov dword [esp + 0x44], ecx
mov ecx, edx
mov dword [esp + 0x40], edx
call fcn.0043ff20
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x44]
mov dword [ecx + 4], edx
mov dword [ecx], eax
mov ecx, dword [esp + 0x40]
call fcn.004040a0
sub esp, 8
mov ecx, dword [0x495460]
and ecx, 0xb71f8e94
mov dword [0x495460], ecx
mov dword [esp + 0x3c], eax
mov eax, 0x130480a0
mov ecx, dword [0x4944e4]
cmp eax, ecx
jg 0x41227e
mov eax, dword [0x491e78]
add eax, 0xc5176b8e
mov dword [0x491e78], eax
jmp 0x41228d
mov eax, dword [0x492d3c]
add eax, 0x65df0388
mov dword [0x492d3c], eax
lea eax, [esp + 0x150]
lea ecx, [esp + 0x95a]
mov edx, dword [esp + 0xb78]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00421570
cmp eax, 0
jne 0x412387
mov eax, dword [0x4933fc]
mov ecx, eax
dec ecx
mov dword [0x4933fc], ecx
add eax, 0xc9b4a1e6
mov ecx, dword [0x493340]
shl ecx, 4
or eax, ecx
cmp eax, 0x79296ac0
jg 0x412332
mov eax, 0xe3972a1c
mov ecx, dword [0x4946f8]
mov dx, word [0x48f84a]
movsx esi, dx
sar esi, 7
add ecx, esi
and ecx, 0xb1ccd538
cmp eax, ecx
je 0x41232d
mov eax, dword [0x492300]
mov ecx, eax
dec ecx
mov dword [0x492300], ecx
or eax, 0xfff7799b
mov ecx, dword [0x491bec]
and ecx, eax
mov dword [0x491bec], ecx
jmp 0x412332
mov dword [esp + 0x228], 0xffffffff
mov ax, word [0x48feb4]
movsx ecx, ax
mov edx, dword [0x495560]
xor ecx, edx
mov dword [0x491cb8], ecx
mov ecx, dword [esp + 0xb70]
call fcn.00408210
mov ecx, dword [0x4927d0]
sar ecx, 9
mov edx, dword [0x493ea8]
xor edx, ecx
mov dword [0x493ea8], edx
mov dword [esp + 0x14c], 0xd
jmp 0x4123a2
mov eax, dword [0x494f20]
imul eax, eax, 0x339b48d0
mov dword [0x494f20], eax
mov dword [esp + 0x14c], 0
lea ecx, [esp + 0x150]
call fcn.00416ab0
mov ecx, dword [esp + 0x14c]
test ecx, ecx
mov dword [esp + 0x38], ecx
je 0x4123dc
jmp 0x4123c6
mov eax, dword [esp + 0x38]
sub eax, 0xd
mov dword [esp + 0x34], eax
je 0x412564
jmp 0x4128eb
jmp 0x4123e1
mov eax, dword [0x491914]
mov ecx, dword [0x494258]
lea eax, [eax + ecx + 0x2c7958ba]
mov dword [0x494258], eax
mov eax, dword [0x4940f8]
dec eax
mov dword [0x4940f8], eax
imul eax, eax, 0x620176d0
mov ecx, 0xabd09084
sub ecx, eax
mov dword [0x4943e8], ecx
cmp dword [esp + 0xb74], 0x3b18
jne 0x412519
mov eax, dword [0x49533c]
or eax, 0x2a0dc95e
mov dword [0x49533c], eax
mov eax, dword [esp + 0xb70]
mov ecx, eax
call fcn.0042b130
cmp eax, 0x500000
jbe 0x412464
mov eax, dword [0x4945ac]
imul eax, eax, 0xbffdffdd
mov dword [0x4945ac], eax
jmp 0x412564
mov eax, 0x812a05d8
mov cx, word [0x48f76a]
movsx edx, cx
add edx, 0x91e0170d
cmp eax, edx
jle 0x412490
mov dword [0x493a7c], 0x73f9a84d
jmp 0x412514
mov eax, 0x66a127c3
mov ecx, dword [0x4954f4]
sar ecx, 7
or ecx, 0x2d9be1a8
cmp eax, ecx
jge 0x4124ee
mov eax, dword [0x4939d0]
shr eax, 0xa
imul eax, eax, 0xf8bcdd5d
mov cx, word [0x49130c]
mov dx, cx
mov esi, edx
dec esi
mov cx, si
mov word [0x49130c], cx
and eax, edx
mov cx, word [0x49120a]
mov dx, cx
and edx, eax
mov cx, dx
mov word [0x49120a], cx
jmp 0x41250f
mov eax, dword [0x494830]
add eax, 0x40dafebd
mov cx, word [0x48f840]
mov dx, cx
imul edx, eax
mov cx, dx
mov word [0x48f840], cx
jmp 0x412514
jmp 0x412519
mov eax, 0xcffc2878
mov cx, word [0x48fc9e]
movsx edx, cx
cmp eax, edx
jle 0x412550
mov eax, dword [0x49349c]
sar eax, 5
add eax, 0x5fa6a72d
mov ecx, dword [0x493dd0]
xor ecx, eax
mov dword [0x493dd0], ecx
jmp 0x41255f
mov eax, dword [0x4919d4]
and eax, 0x2e00a00
mov dword [0x4919d4], eax
jmp 0x4118a8
mov eax, dword [0x492464]
mov ecx, eax
inc ecx
mov dword [0x492464], ecx
mov ecx, 0x64ba4def
sub ecx, eax
mov eax, dword [0x4918d4]
sub eax, ecx
mov dword [0x4918d4], eax
cmp dword [esp + 0x228], 0
jl 0x41260a
mov eax, dword [0x4935ec]
dec eax
mov dword [0x4935ec], eax
xor eax, 0xc70028b
mov ecx, dword [0x4958f4]
or eax, ecx
or eax, 0xb309fd64
mov dword [0x4958f4], eax
mov eax, dword [esp + 0xb70]
mov ecx, dword [esp + 0x228]
mov edx, esp
mov dword [edx], 0
mov dword [esp + 0x30], ecx
mov ecx, eax
mov dword [esp + 0x2c], eax
call fcn.0043ff20
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x30]
mov dword [ecx + 4], edx
mov dword [ecx], eax
mov ecx, dword [esp + 0x2c]
call fcn.004040a0
sub esp, 8
mov ecx, dword [0x492890]
and ecx, 0x987f9fef
mov dword [0x492890], ecx
mov dword [esp + 0x28], eax
mov eax, 0xcf437ae5
mov ecx, dword [0x4944f8]
dec ecx
mov dword [0x4944f8], ecx
cmp eax, ecx
je 0x412640
mov eax, dword [0x492e00]
mov ecx, dword [0x4937d0]
or eax, ecx
or eax, 0x9af2d3f8
mov dword [0x4937d0], eax
jmp 0x412658
mov ax, word [0x4916b2]
mov cx, ax
and ecx, 0xe91d
mov ax, cx
mov word [0x48f7cc], ax
cmp dword [esp + 0xb78], 0
je 0x412750
test byte [esp + 0x21f], 1
jne 0x412750
mov eax, dword [0x4954d4]
inc eax
mov dword [0x4954d4], eax
xor eax, 0xf8bea5a3
cmp eax, 0xf2afdfef
jge 0x4126a3
mov eax, dword [0x491eb4]
and eax, 0xe0183f47
mov dword [0x491eb4], eax
jmp 0x4126b3
mov eax, dword [0x492b14]
imul eax, eax, 0xc33c0959
mov dword [0x492b14], eax
lea eax, [esp + 0x95a]
mov ecx, dword [esp + 0xb78]
mov edx, dword [esp + 0xb70]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00421570
cmp eax, 0
jne 0x412730
mov eax, dword [0x494ce0]
inc eax
mov dword [0x494ce0], eax
mov ecx, dword [0x4931f4]
and ecx, eax
mov dword [0x4931f4], ecx
mov ecx, dword [esp + 0xb70]
call fcn.00408210
mov eax, dword [0x4937d0]
dec eax
mov dword [0x4937d0], eax
cmp eax, 0x4482804
jge 0x41272b
mov eax, dword [0x493324]
add eax, 0x9ee4e9a0
mov dword [0x493324], eax
jmp 0x412730
mov eax, dword [0x492d1c]
or eax, 0xdd89
mov cx, word [0x48f936]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x48f936], cx
mov eax, dword [0x492ffc]
xor eax, 0xcfa82d57
mov dword [0x492ffc], eax
mov eax, dword [0x48f4f8]
mov ecx, dword [esp + 0x6e4]
mov edx, esp
mov dword [edx], ecx
mov dword [edx + 4], 2
call eax
sub esp, 8
mov si, word [0x4903cc]
mov cx, si
imul ecx, ecx, 0x4a441a14
mov si, cx
mov word [0x4903cc], si
mov ecx, dword [0x48f4c4]
mov edx, dword [esp + 0x6e4]
mov edi, esp
mov dword [edi], edx
mov dword [esp + 0x24], eax
call ecx
sub esp, 4
mov ecx, dword [0x4926ac]
add ecx, 0xef879693
and ecx, 0xd52188a9
mov dword [0x492b98], ecx
mov dword [esp + 0x20], eax
mov eax, 0xd28a9186
mov ecx, esp
lea edx, [esp + 0x95a]
mov dword [ecx], edx
mov dword [ecx + 4], 0xef
mov dword [esp + 0x1c], eax
call fcn.004162e0
mov eax, dword [0x4925b4]
mov ecx, eax
dec ecx
mov dword [0x4925b4], ecx
mov ecx, dword [0x494ad8]
xor ecx, 0xffffffff
xor ecx, 0xfd45ae4b
or eax, ecx
mov ecx, dword [esp + 0x1c]
cmp ecx, eax
jge 0x412825
mov eax, dword [0x493dbc]
xor eax, 0xd6a94234
mov dword [0x493dbc], eax
mov eax, esp
lea ecx, [esp + 0xa49]
mov dword [eax], ecx
mov dword [eax + 4], 0xef
call fcn.004162e0
mov eax, dword [0x4924a0]
inc eax
mov dword [0x4924a0], eax
imul eax, eax, 0x695266c5
add eax, 0x40544b64
mov ecx, dword [0x493234]
imul ecx, eax
mov dword [0x493234], ecx
mov eax, esp
lea ecx, [esp + 0x6eb]
mov dword [eax], ecx
mov dword [eax + 4], 0x26f
call fcn.004162e0
mov eax, dword [0x4956f0]
mov ecx, 0x9927249d
sub ecx, eax
mov eax, dword [0x492378]
imul eax, ecx
mov dword [0x492378], eax
mov eax, esp
lea ecx, [esp + 0x24d]
mov dword [eax], ecx
mov dword [eax + 4], 0x46f
call fcn.004162e0
mov eax, dword [0x494194]
mov ecx, eax
dec ecx
mov dword [0x494194], ecx
imul eax, eax, 0x613563f2
xor eax, 0x1446
mov dx, word [0x49160c]
mov cx, dx
and ecx, eax
mov dx, cx
mov word [0x49160c], dx
lea ecx, [esp + 0x6bc]
call fcn.00416ab0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
int3