Function at 0x414f80
Capabilities:
Encode data using base64
Resolve function by parsing pe exports

Disassembly:
push ebx
push edi
push esi
sub esp, 0x7c
mov eax, dword [esp + 0x98]
mov cl, byte [esp + 0x94]
mov edx, dword [esp + 0x90]
mov esi, dword [esp + 0x8c]
mov edi, 0x638d8170
mov dword [esp + 0x78], eax
and cl, 1
mov byte [esp + 0x77], cl
mov dword [esp + 0x70], edx
mov dword [esp + 0x6c], esi
mov bx, word [0x49244a]
mov ax, bx
inc eax
mov bx, ax
mov word [0x49244a], bx
movsx eax, bx
xor eax, 0x6a9189b3
cmp edi, eax
je 0x414fee
mov eax, dword [0x4951cc]
or eax, 0xc3aa1b37
mov dword [0x4951cc], eax
mov eax, dword [0x495834]
mov cx, word [0x492dba]
mov dx, cx
imul edx, eax
mov cx, dx
mov word [0x492dba], cx
mov eax, dword [0x4957a4]
sar eax, 9
or eax, 0xfeddffbf
mov edx, dword [0x494f6c]
sub edx, eax
mov dword [0x494f6c], edx
mov eax, dword [0x495c94]
and eax, 0xa7c0274c
xor eax, 0x5d003911
mov edx, dword [0x493ba0]
add edx, eax
mov dword [0x493ba0], edx
mov dword [esp + 0x5c], 0
mov cx, word [0x4921d0]
movsx eax, cx
shl eax, 4
xor eax, 0xdc9993c
cmp eax, 0x1c3f6500
je 0x415076
mov eax, dword [0x4938dc]
or eax, 0xbffdd9f5
mov dword [0x4938dc], eax
mov eax, 0xd0bd1910
mov dword [esp + 0x58], 0
mov ecx, dword [0x496590]
add ecx, 0xe1072517
mov dword [0x496590], ecx
mov ecx, esp
mov dword [ecx + 4], 0x41
mov dword [ecx], 0x3ece
mov dword [esp + 0x3c], eax
call fcn.00416c70
mov dword [esp + 0x40], eax
mov eax, dword [0x495624]
and eax, 0x973497f2
mov ecx, dword [0x494aa8]
or ecx, eax
mov dword [0x494aa8], ecx
mov eax, esp
mov dword [eax + 4], 4
mov dword [eax], 0x2a4e
call fcn.00416c70
mov dword [esp + 0x68], eax
mov eax, dword [0x496330]
add eax, 0xf9a7639
mov dword [0x496330], eax
mov eax, dword [esp + 0x68]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x4d]
mov dword [ecx], eax
call fcn.00455a70
mov ecx, dword [0x493eec]
imul ecx, ecx, 0x10e0d920
or ecx, 0x9cfd824c
mov edx, dword [0x493cc8]
xor edx, ecx
mov dword [0x493cc8], edx
mov ecx, esp
mov dword [ecx + 4], 4
mov dword [ecx], 0x2933
mov dword [esp + 0x38], eax
call fcn.00416c70
mov dword [esp + 0x64], eax
mov eax, dword [0x495730]
and eax, 0x63fc90c9
mov ecx, dword [esp + 0x3c]
cmp ecx, eax
jge 0x415180
mov ax, word [0x492a8a]
mov cx, ax
mov edx, 0x80637a32
sub edx, ecx
xor edx, 0x4a55
mov ax, word [0x4930a4]
mov cx, ax
add ecx, edx
mov ax, cx
mov word [0x4930a4], ax
mov eax, 0xfff7bba7
mov ecx, dword [esp + 0x68]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 4
mov dword [esp + 0x34], eax
call fcn.0044ad10
mov eax, dword [0x495a28]
mov ecx, 0x173e39b5
sub ecx, eax
or ecx, 0x467f
mov si, word [0x491dfc]
mov ax, si
xor eax, ecx
mov si, ax
mov word [0x491dfc], si
mov eax, dword [esp + 0x64]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x49]
mov dword [ecx], eax
call fcn.00455a70
mov ecx, dword [0x496458]
add ecx, ecx
mov edx, dword [0x4942c4]
xor ecx, edx
xor ecx, 0x7399f4c7
mov dword [0x4942c4], ecx
mov ecx, esp
mov dword [ecx + 4], 4
mov dword [ecx], 0x28ff
mov dword [esp + 0x30], eax
call fcn.00416c70
mov dword [esp + 0x60], eax
mov si, word [0x4925e6]
movsx eax, si
xor eax, 0xffffffff
mov ecx, dword [esp + 0x34]
cmp ecx, eax
jg 0x415242
mov ax, word [0x4925bc]
mov cx, ax
or ecx, 0xe863
mov ax, cx
mov word [0x4925bc], ax
mov eax, 0x1eccfa37
mov ecx, dword [esp + 0x64]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 4
mov dword [esp + 0x2c], eax
call fcn.0044ad10
mov eax, dword [0x496438]
add eax, 0xf93442d9
mov dword [0x496438], eax
mov eax, dword [esp + 0x60]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x45]
mov dword [ecx], eax
call fcn.00455a70
mov ecx, dword [0x495a74]
add ecx, 0x45c6485d
mov dword [0x495a74], ecx
mov ecx, dword [esp + 0x60]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 4
mov dword [esp + 0x28], eax
call fcn.0044ad10
mov si, word [0x492500]
mov ax, si
inc eax
mov si, ax
mov word [0x492500], si
movsx eax, si
mov ecx, dword [esp + 0x2c]
cmp ecx, eax
jne 0x4152e8
mov ax, word [0x49337a]
mov cx, ax
xor ecx, 0x4100
mov ax, cx
mov word [0x49337a], ax
jmp 0x4152ed
cmp dword [esp + 0x70], 0
je 0x41576e
mov eax, dword [0x4942b8]
imul eax, eax, 0xfe212a10
mov cx, word [0x493650]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x493650], cx
mov eax, dword [esp + 0x70]
dec eax
mov dword [esp + 0x70], eax
mov eax, dword [0x494c58]
mov edx, eax
dec edx
mov dword [0x494c58], edx
imul eax, eax, 0x344ee155
and eax, 0x94b79bc8
cmp eax, 0xea285fc5
jg 0x415355
mov eax, dword [0x4937e0]
or eax, 0xd57f2ea7
mov dword [0x4937e0], eax
mov eax, dword [esp + 0x6c]
mov cl, byte [eax]
mov eax, dword [esp + 0x5c]
mov byte [esp + eax + 0x55], cl
mov dx, word [0x493058]
movsx eax, dx
mov esi, dword [0x494084]
imul eax, esi
mov dword [0x493ec8], eax
mov eax, dword [esp + 0x5c]
inc eax
mov dword [esp + 0x5c], eax
mov eax, dword [0x494ddc]
add eax, 0xdac02be8
mov dword [0x494ddc], eax
mov eax, dword [esp + 0x6c]
inc eax
mov dword [esp + 0x6c], eax
mov eax, dword [0x494ddc]
and eax, 0x320080
mov dword [0x494ddc], eax
cmp dword [esp + 0x5c], 3
jne 0x41575f
mov eax, dword [0x493ee4]
or eax, 0x9c4acab6
mov dword [0x493ee4], eax
movzx eax, byte [esp + 0x55]
shr eax, 2
mov cl, al
mov byte [esp + 0x51], cl
mov eax, dword [0x494354]
sar eax, 7
or eax, 0xb0a28d
mov dword [0x4952f4], eax
movzx eax, byte [esp + 0x55]
and eax, 3
shl eax, 4
mov cl, al
mov byte [esp + 0x52], cl
mov dx, word [0x493546]
mov ax, dx
dec eax
mov si, ax
mov word [0x493546], si
movsx eax, dx
mov edi, dword [0x493ea8]
imul eax, edi
and eax, 0xc096c791
mov dword [0x493fa0], eax
movzx eax, byte [esp + 0x56]
shr eax, 4
movzx edi, byte [esp + 0x52]
add edi, eax
mov eax, edi
mov cl, al
mov byte [esp + 0x52], cl
mov eax, dword [0x4958a4]
shl eax, 9
cmp eax, 0x2422888
jl 0x415493
mov eax, dword [0x495d94]
mov ecx, eax
dec ecx
mov dword [0x495d94], ecx
xor eax, 0x9a4b130e
cmp eax, 0x7087bb1d
jl 0x41548e
mov eax, 0xb1bc9e00
mov ecx, dword [0x4948d0]
xor ecx, 0xffffffff
cmp eax, ecx
je 0x415484
jmp 0x415489
jmp 0x415489
jmp 0x41548e
jmp 0x415493
mov eax, 0x7f8f3979
movzx ecx, byte [esp + 0x56]
and ecx, 0xf
shl ecx, 2
mov dl, cl
mov byte [esp + 0x53], dl
mov ecx, dword [0x49652c]
or ecx, 0x94c8db54
cmp eax, ecx
je 0x4154da
mov eax, dword [0x495330]
add eax, 0xadd3f842
and eax, 0x8d7f4ec9
mov ecx, dword [0x495848]
add ecx, eax
mov dword [0x495848], ecx
movzx eax, byte [esp + 0x57]
shr eax, 6
movzx ecx, byte [esp + 0x53]
add ecx, eax
mov dl, cl
mov byte [esp + 0x53], dl
mov eax, dword [0x49467c]
or eax, 0xf9deff56
mov dword [0x49467c], eax
movzx eax, byte [esp + 0x57]
and eax, 0x3f
mov dl, al
mov byte [esp + 0x54], dl
mov si, word [0x4936b2]
mov ax, si
add eax, 0x33f12371
mov si, ax
mov word [0x4936b2], si
mov dword [esp + 0x5c], 0
mov dword [0x493dbc], 0xe65b9ea6
cmp dword [esp + 0x5c], 4
je 0x415734
mov eax, dword [0x4959ec]
xor eax, 0x4d0090a5
mov dword [0x4959ec], eax
test byte [esp + 0x77], 1
je 0x415680
mov eax, dword [esp + 0x5c]
movzx eax, byte [esp + eax + 0x51]
cmp eax, 0x3d
jle 0x415680
mov eax, dword [0x4947fc]
and eax, 0x4341
or eax, 0xbcba
mov cx, word [0x4925b8]
mov dx, cx
imul edx, eax
mov cx, dx
mov word [0x4925b8], cx
mov eax, dword [esp + 0x5c]
movzx eax, byte [esp + eax + 0x51]
cmp eax, 0x3e
jne 0x4155ee
mov eax, dword [0x49391c]
or eax, 0xfe1b8763
mov dword [0x49391c], eax
mov ecx, dword [esp + 0x78]
mov eax, esp
lea edx, [esp + 0x4d]
mov dword [eax], edx
call fcn.004075d0
sub esp, 4
mov ecx, dword [0x494060]
sar ecx, 7
mov edx, dword [0x494e88]
lea ecx, [ecx + edx + 0x48849d26]
mov dword [0x494e88], ecx
mov dword [esp + 0x24], eax
jmp 0x415671
mov ax, word [0x492c68]
mov cx, ax
or ecx, 0xbfb9
mov ax, cx
mov word [0x492c68], ax
mov ecx, dword [esp + 0x78]
mov edx, esp
lea esi, [esp + 0x49]
mov dword [edx], esi
call fcn.004075d0
sub esp, 4
mov ecx, dword [0x4949b4]
and ecx, 0xee0bd187
or ecx, 0x3bec44dd
cmp ecx, 0xd03777a8
mov dword [esp + 0x20], eax
je 0x41566c
mov eax, 0xf1f7d897
mov ecx, dword [0x493724]
mov edx, ecx
inc edx
mov dword [0x493724], edx
cmp eax, ecx
jle 0x415667
mov eax, dword [0x4962c8]
and eax, 0xdf95c02a
mov dword [0x4962c8], eax
jmp 0x41566c
jmp 0x415671
mov dword [0x494694], 0x7098cc8
jmp 0x415707
mov eax, 0x1d6d36d5
mov ecx, dword [0x4943c4]
and ecx, 0xa31917a4
mov dx, word [0x49352e]
movsx esi, dx
or ecx, esi
cmp eax, ecx
jg 0x4156b4
mov eax, dword [0x49695c]
add eax, 0xbddfe15b
mov dword [0x49695c], eax
mov ecx, dword [esp + 0x78]
mov eax, dword [esp + 0x5c]
movzx eax, byte [esp + eax + 0x51]
mov edx, dword [esp + 0x40]
movsx eax, byte [edx + eax]
mov edx, esp
mov dword [edx], eax
call fcn.00420760
sub esp, 4
mov ecx, dword [0x496418]
mov si, word [0x491dea]
mov dx, si
dec edx
mov si, dx
mov word [0x491dea], si
movsx edx, si
or ecx, edx
mov edx, dword [0x493800]
or edx, ecx
mov dword [0x493800], edx
mov dword [esp + 0x1c], eax
mov eax, dword [0x493eb0]
imul eax, eax, 0xec07fd5a
mov dword [0x493eb0], eax
mov eax, dword [esp + 0x5c]
inc eax
mov dword [esp + 0x5c], eax
mov eax, dword [0x494964]
or eax, 0xc31a5ed7
mov dword [0x494964], eax
jmp 0x415537
mov dword [0x495dbc], 0x2b9982e2
mov dword [esp + 0x5c], 0
mov eax, dword [0x494fc4]
or eax, 0x4c281db4
mov ecx, dword [0x495248]
imul ecx, eax
mov dword [0x495248], ecx
mov dword [0x4941c8], 0x4201803c
jmp 0x4152ed
mov eax, dword [0x494298]
add eax, 0x1ffef7fb
mov dword [0x494298], eax
cmp dword [esp + 0x5c], 0
je 0x415eee
mov eax, dword [0x4955d8]
not eax
imul eax, eax, 0x38c17c5a
add eax, 0x66bf88a
mov cx, word [0x49239a]
movsx edx, cx
imul edx, edx, 0x644a413f
and edx, 0x3d818fe
cmp eax, edx
je 0x4157fc
mov eax, 0x71e0e62a
mov ecx, dword [0x495e98]
cmp eax, ecx
jge 0x4157f7
mov eax, 0xb4b0ad2b
mov ecx, dword [0x495e18]
xor ecx, 0xffffffff
imul ecx, ecx, 0xf614ab58
xor ecx, 0x6dfffe1f
cmp eax, ecx
je 0x4157f2
jmp 0x4157f2
jmp 0x4157f7
jmp 0x4157fc
mov eax, 0xffce86df
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x58], ecx
mov dx, word [0x4934cc]
movsx ecx, dx
or ecx, 0xfa55e503
cmp eax, ecx
je 0x415877
mov eax, 0x137b5076
mov cx, word [0x4923b6]
movsx edx, cx
cmp eax, edx
jle 0x41584c
mov eax, dword [0x495360]
and eax, 0x1a0a110
mov dword [0x495360], eax
jmp 0x415872
mov eax, 0xf7e19670
mov ecx, dword [0x493a4c]
sar ecx, 0xa
add ecx, 0xe94e9645
cmp eax, ecx
jne 0x41586d
jmp 0x41586d
jmp 0x415872
jmp 0x415877
jmp 0x41587c
cmp dword [esp + 0x58], 3
jge 0x41592b
mov eax, dword [0x493a88]
add eax, 0x49516e44
mov cx, word [0x4929e8]
mov dx, cx
and edx, eax
mov cx, dx
mov word [0x4929e8], cx
mov eax, dword [esp + 0x58]
mov byte [esp + eax + 0x55], 0
mov cx, word [0x4932d6]
mov ax, cx
dec eax
mov cx, ax
mov word [0x4932d6], cx
movsx eax, cx
and eax, 0x89aa36cf
mov edx, dword [0x495110]
xor eax, edx
mov edx, dword [0x494290]
add edx, eax
mov dword [0x494290], edx
mov eax, dword [esp + 0x58]
inc eax
mov dword [esp + 0x58], eax
mov eax, dword [0x494698]
mov edx, eax
dec edx
mov dword [0x494698], edx
mov edx, dword [0x494f4c]
sar edx, 9
imul edx, edx, 0x475da543
sub eax, edx
cmp eax, 0xd9d79bb
jl 0x415926
mov eax, dword [0x494278]
imul eax, eax, 0xb09a3bc0
mov dword [0x494278], eax
jmp 0x41587c
mov eax, 0xaf803ebc
mov ecx, dword [0x495f40]
or ecx, 0xe9c7
mov dx, word [0x4925f8]
mov si, dx
xor esi, ecx
mov dx, si
mov word [0x4925f8], dx
movzx ecx, byte [esp + 0x55]
shr ecx, 2
mov bl, cl
mov byte [esp + 0x51], bl
mov dx, word [0x492774]
mov cx, dx
imul ecx, ecx, 0x656741d7
mov dx, cx
mov word [0x492774], dx
movzx ecx, byte [esp + 0x55]
and ecx, 3
shl ecx, 4
mov bl, cl
mov byte [esp + 0x52], bl
mov word [0x492068], 0x7de7
movzx ecx, byte [esp + 0x56]
shr ecx, 4
movzx esi, byte [esp + 0x52]
add esi, ecx
mov ecx, esi
mov bl, cl
mov byte [esp + 0x52], bl
mov dx, word [0x492bd2]
mov cx, dx
and ecx, 0x2390
mov dx, cx
mov word [0x492bd2], dx
movzx ecx, byte [esp + 0x56]
and ecx, 0xf
shl ecx, 2
mov bl, cl
mov byte [esp + 0x53], bl
mov ecx, dword [0x49475c]
and ecx, 0x90231a
mov dword [0x49475c], ecx
movzx ecx, byte [esp + 0x57]
shr ecx, 6
movzx esi, byte [esp + 0x53]
add esi, ecx
mov ecx, esi
mov bl, cl
mov byte [esp + 0x53], bl
mov dx, word [0x49242c]
movsx ecx, dx
xor ecx, 0x34cebf8f
xor ecx, 0xb03e7975
cmp eax, ecx
jne 0x415a43
mov eax, dword [0x4963e4]
mov ecx, eax
inc ecx
mov dword [0x4963e4], ecx
mov dx, word [0x492f64]
mov cx, dx
lea eax, [ecx + eax + 1]
mov dx, ax
mov word [0x492f64], dx
movzx eax, byte [esp + 0x57]
and eax, 0x3f
mov cl, al
mov byte [esp + 0x54], cl
mov eax, dword [0x4968f4]
mov edx, eax
dec edx
mov dword [0x4968f4], edx
and eax, 0xb5bc173c
mov edx, dword [0x495808]
not edx
imul edx, edx, 0x2727d5e7
mov esi, dword [0x4946f4]
shl esi, 7
sub edx, esi
cmp eax, edx
je 0x415a9c
mov ax, word [0x49369e]
movsx ecx, ax
mov edx, dword [0x4950ac]
sub edx, ecx
mov dword [0x4950ac], edx
mov dword [esp + 0x58], 0
mov eax, dword [0x496790]
add eax, 0x93b710e8
mov dword [0x496790], eax
mov ax, word [0x4922b6]
mov cx, ax
add ecx, 0x51803
mov ax, cx
mov word [0x4922b6], ax
mov ecx, dword [esp + 0x58]
cmp ecx, dword [esp + 0x5c]
jle 0x415af9
mov eax, dword [0x4940b4]
mov cx, word [0x492884]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x492884], cx
jmp 0x415d3b
mov eax, dword [0x4941b0]
sar eax, 7
xor eax, 0x7f950e11
mov ecx, dword [0x4961ac]
add ecx, eax
mov dword [0x4961ac], ecx
test byte [esp + 0x77], 1
je 0x415c94
mov eax, dword [esp + 0x58]
movzx eax, byte [esp + eax + 0x51]
cmp eax, 0x3d
jle 0x415c94
mov eax, dword [0x494120]
add eax, 0x4031703
mov dword [0x494120], eax
mov eax, dword [esp + 0x58]
movzx eax, byte [esp + eax + 0x51]
cmp eax, 0x3e
jne 0x415ba2
mov eax, dword [0x496138]
mov ecx, dword [0x494c8c]
or ecx, eax
mov dword [0x494c8c], ecx
mov ecx, dword [esp + 0x78]
mov eax, esp
lea edx, [esp + 0x4d]
mov dword [eax], edx
call fcn.004075d0
sub esp, 4
mov si, word [0x4922bc]
mov cx, si
mov si, word [0x492ad4]
mov dx, si
add edx, ecx
mov si, dx
mov word [0x492ad4], si
mov dword [esp + 0x18], eax
jmp 0x415c80
mov eax, 0x29c6225b
mov ecx, dword [0x495264]
imul ecx, ecx, 0xbe72c3a8
or ecx, 0x78934416
cmp eax, ecx
jg 0x415c56
mov ax, word [0x49284a]
movsx ecx, ax
shl ecx, 7
xor ecx, 0x1808338
mov ax, word [0x492cde]
movsx edx, ax
or edx, 0xa6117930
cmp ecx, edx
jg 0x415c27
mov ax, word [0x492c10]
mov cx, ax
inc ecx
mov ax, cx
mov word [0x492c10], ax
movsx ecx, ax
imul ecx, ecx, 0x55da9d3a
mov edx, dword [0x495a28]
sar edx, 7
and ecx, edx
cmp ecx, 0x26b55e9f
jle 0x415c22
jmp 0x415c22
jmp 0x415c51
mov eax, 0x36170620
mov ecx, dword [0x493974]
dec ecx
mov dword [0x493974], ecx
and ecx, 0x19fd6f92
cmp eax, ecx
jl 0x415c4c
jmp 0x415c4c
jmp 0x415c51
jmp 0x415c56
mov ecx, dword [esp + 0x78]
mov eax, esp
lea edx, [esp + 0x49]
mov dword [eax], edx
call fcn.004075d0
sub esp, 4
mov ecx, dword [0x494894]
add ecx, 0x1040005
mov dword [0x494894], ecx
mov dword [esp + 0x14], eax
mov eax, dword [0x4953b4]
add eax, 0x1f1c3a7d
mov dword [0x4953b4], eax
jmp 0x415cda
mov eax, dword [0x493f28]
add eax, 0x74ad4c70
mov dword [0x493f28], eax
mov ecx, dword [esp + 0x78]
mov eax, dword [esp + 0x58]
movzx eax, byte [esp + eax + 0x51]
mov edx, dword [esp + 0x40]
movsx eax, byte [edx + eax]
mov edx, esp
mov dword [edx], eax
call fcn.00420760
sub esp, 4
mov ecx, dword [0x494320]
add ecx, 0x395ed91f
mov dword [0x494320], ecx
mov dword [esp + 0x10], eax
mov eax, dword [0x496920]
add eax, 0xcbcf7829
add eax, 0x4e29e31f
cmp eax, 0x4cc58900
jne 0x415d0c
mov ax, word [0x493400]
mov cx, ax
add ecx, 0x3ae2f14a
mov ax, cx
mov word [0x493400], ax
mov eax, dword [esp + 0x58]
inc eax
mov dword [esp + 0x58], eax
mov eax, dword [0x496338]
inc eax
mov dword [0x496338], eax
mov cx, word [0x49285e]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x49285e], cx
jmp 0x415ab3
jmp 0x415d40
cmp dword [esp + 0x5c], 3
jge 0x415eca
mov eax, dword [0x495294]
mov ecx, eax
inc ecx
mov dword [0x495294], ecx
add eax, 0xc893f6c0
mov ecx, dword [0x494438]
mov edx, ecx
dec edx
mov dword [0x494438], edx
cmp eax, ecx
jg 0x415d91
mov eax, dword [0x4945ec]
mov cx, word [0x4929a4]
mov dx, cx
imul edx, eax
mov cx, dx
mov word [0x4929a4], cx
mov eax, dword [esp + 0x5c]
inc eax
mov dword [esp + 0x5c], eax
mov cx, word [0x491e84]
movsx eax, cx
imul eax, eax, 0x20f96f61
add eax, 0x2282fb5
mov edx, dword [0x493fd8]
inc edx
mov dword [0x493fd8], edx
and edx, 0xdfce98fa
xor edx, 0xe589ce0a
cmp eax, edx
jl 0x415df6
mov ax, word [0x493656]
mov cx, ax
shl ecx, 4
xor ecx, 0xfa3c
mov ax, word [0x491de6]
mov dx, ax
add edx, ecx
mov ax, dx
mov word [0x491de6], ax
test byte [esp + 0x77], 1
je 0x415e58
mov eax, dword [0x495064]
mov cx, word [0x4925bc]
mov dx, cx
xor eax, edx
xor eax, 0xbeae
mov cx, ax
mov word [0x4925bc], cx
mov ecx, dword [esp + 0x78]
mov eax, esp
lea edx, [esp + 0x45]
mov dword [eax], edx
call fcn.004075d0
sub esp, 4
mov si, word [0x492aa8]
mov cx, si
and ecx, 0xdfcf
mov si, cx
mov word [0x492aa8], si
mov dword [esp + 0xc], eax
jmp 0x415ea2
mov ax, word [0x492898]
mov cx, ax
add ecx, 0x51197eeb
mov ax, cx
mov word [0x492898], ax
mov ecx, dword [esp + 0x78]
mov edx, esp
mov dword [edx], 0x3d
call fcn.00420760
sub esp, 4
mov si, word [0x492dca]
mov cx, si
or ecx, 0x1cd
mov si, cx
mov word [0x492dca], si
mov dword [esp + 8], eax
mov ax, word [0x49341c]
movsx ecx, ax
imul ecx, ecx, 0x8b7b5e24
or ecx, 0x51abcd31
mov edx, dword [0x494d24]
sub edx, ecx
mov dword [0x494d24], edx
jmp 0x415d40
mov ax, word [0x492e7e]
movsx ecx, ax
lea ecx, [ecx*4 - 0x5e6f898d]
or ecx, 0x5ec18cb4
mov edx, dword [0x4944a4]
sub edx, ecx
mov dword [0x4944a4], edx
mov eax, 0x210f8fe7
mov ecx, dword [0x4961cc]
xor ecx, 0xffffffff
xor ecx, 0x7737117a
xor ecx, 0x3aa75233
cmp eax, ecx
jl 0x415f5e
mov eax, 0x9d56d6a4
mov cx, word [0x4927f2]
mov dx, cx
inc edx
mov cx, dx
mov word [0x4927f2], cx
movsx edx, cx
and edx, 0xb4c596ec
and edx, 0xfd293e98
cmp eax, edx
jg 0x415f59
mov eax, dword [0x496050]
mov ecx, eax
dec ecx
mov dword [0x496050], ecx
mov dx, ax
mov word [0x491ffa], dx
jmp 0x415f6d
mov eax, dword [0x495a40]
xor eax, 0x1d43b037
mov dword [0x495a40], eax
mov eax, dword [esp + 0x40]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x41
call fcn.0044ad10
mov dword [0x4956cc], 0xa82498a3
mov eax, esp
lea ecx, [esp + 0x4d]
mov dword [eax], ecx
mov dword [eax + 4], 4
call fcn.004199c0
mov eax, dword [0x4960a4]
shr eax, 7
mov dx, word [0x491f6c]
mov cx, dx
mov esi, ecx
dec esi
mov dx, si
mov word [0x491f6c], dx
xor eax, ecx
or eax, 0xded9
mov dx, ax
mov word [0x49326c], dx
mov eax, esp
lea ecx, [esp + 0x49]
mov dword [eax], ecx
mov dword [eax + 4], 4
call fcn.004199c0
mov eax, dword [0x493850]
imul eax, eax, 0xf26be262
mov dword [0x493850], eax
mov eax, esp
lea ecx, [esp + 0x45]
mov dword [eax], ecx
mov dword [eax + 4], 4
call fcn.004199c0
mov eax, dword [0x494bbc]
and eax, 0x127620a2
mov dword [0x494bbc], eax
add esp, 0x7c
pop esi
pop edi
pop ebx
ret