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

Disassembly:
push edi
push esi
sub esp, 0x7c
mov eax, dword [esp + 0x94]
mov cl, byte [esp + 0x90]
mov edx, dword [esp + 0x8c]
mov esi, dword [esp + 0x88]
mov dword [esp + 0x78], eax
and cl, 1
mov byte [esp + 0x77], cl
mov dword [esp + 0x70], edx
mov dword [esp + 0x6c], esi
mov eax, dword [0x49f024]
and eax, 0x17fd260
mov dword [0x49f024], eax
mov di, word [0x4a4270]
mov ax, di
mov di, word [0x4a86f6]
mov dx, di
mov esi, 0x61d540c7
sub esi, edx
xor eax, esi
dec edx
mov di, dx
mov word [0x4a86f6], di
mov di, word [0x4a6906]
mov dx, di
xor eax, edx
not eax
mov di, ax
mov word [0x4a6906], di
mov di, word [0x4a77b8]
mov ax, di
inc eax
mov di, ax
mov word [0x4a77b8], di
movsx eax, di
add eax, 0xdee0fa17
mov edx, dword [0x4a1574]
and edx, eax
mov dword [0x4a1574], edx
mov eax, dword [0x49bebc]
xor eax, 0x1377ab44
mov dword [0x49bebc], eax
mov dword [esp + 0x5c], 0
mov di, word [0x4a3916]
mov ax, di
or eax, 0xa634
mov di, ax
mov word [0x4a3916], di
mov dword [esp + 0x58], 0
mov eax, dword [0x499900]
or eax, 0x65ae006
mov dword [0x499900], eax
mov eax, esp
mov dword [eax + 4], 0x41
mov dword [eax], 0x4619
call fcn.00416c10
mov dword [esp + 0x40], eax
mov eax, dword [0x49f798]
and eax, 0x1381400
mov dword [0x49f798], eax
mov eax, esp
mov dword [eax + 4], 4
mov dword [eax], 0x1b5c
call fcn.00416c10
mov dword [esp + 0x68], eax
mov eax, dword [0x495a98]
and eax, 0x1906
mov di, word [0x4a370c]
mov dx, di
add edx, eax
mov di, dx
mov word [0x4a370c], di
mov eax, dword [esp + 0x68]
mov edx, esp
mov dword [edx + 4], eax
lea eax, [esp + 0x4d]
mov dword [edx], eax
call fcn.00456260
mov dword [0x493f38], 0x3eb74c69
mov edx, esp
mov dword [edx + 4], 4
mov dword [edx], 0x415d
mov dword [esp + 0x3c], eax
call fcn.00416c10
mov dword [esp + 0x64], eax
mov di, word [0x4a7316]
mov ax, di
or eax, 0xdf6c
mov di, ax
mov word [0x4a7316], di
mov eax, dword [esp + 0x68]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], 4
call fcn.004097d0
mov eax, dword [0x49edf0]
xor eax, 0x6804200
mov dword [0x49edf0], eax
mov eax, dword [esp + 0x64]
mov edx, esp
mov dword [edx + 4], eax
lea eax, [esp + 0x49]
mov dword [edx], eax
call fcn.00456260
mov edx, dword [0x49d888]
or edx, 0xc1df73bb
mov dword [0x49d888], edx
mov edx, esp
mov dword [edx + 4], 4
mov dword [edx], 0x46a8
mov dword [esp + 0x38], eax
call fcn.00416c10
mov dword [esp + 0x60], eax
mov eax, dword [0x4a0a64]
mov edx, eax
inc edx
mov dword [0x4a0a64], edx
or eax, 0x86990410
cmp eax, 0xfffd3bef
jge 0x407e7d
mov ax, word [0x4a58d0]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x4a58d0], dx
movsx ecx, ax
mov ax, word [0x4a517c]
mov si, ax
dec esi
mov dx, si
mov word [0x4a517c], dx
movsx esi, ax
lea ecx, [ecx + esi + 0x537dcf03]
mov esi, dword [0x495cd4]
sub esi, ecx
mov dword [0x495cd4], esi
mov eax, dword [esp + 0x64]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 4
call fcn.004097d0
mov dx, word [0x4a1c20]
mov ax, dx
add eax, 0xd0ca2302
mov dx, ax
mov word [0x4a1c20], dx
mov eax, dword [esp + 0x60]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x45]
mov dword [ecx], eax
call fcn.00456260
mov ecx, dword [0x496424]
add ecx, 0x537746ee
mov dword [0x496424], ecx
mov ecx, dword [esp + 0x60]
mov esi, esp
mov dword [esi + 4], ecx
mov dword [esi], 4
mov dword [esp + 0x34], eax
call fcn.004097d0
mov eax, dword [0x4951f8]
add eax, 0xfae54d7e
mov dword [0x4951f8], eax
cmp dword [esp + 0x70], 0
je 0x408443
mov eax, dword [0x496190]
shl eax, 5
mov ecx, dword [0x4a10e0]
mov edx, ecx
inc edx
mov dword [0x4a10e0], edx
or ecx, 0x9d28fd05
cmp eax, ecx
jle 0x407f41
mov eax, dword [0x49b4b8]
sar eax, 2
mov ecx, dword [0x4a15b4]
or eax, ecx
or eax, 0xd0fafc0
mov dword [0x4a15b4], eax
mov eax, dword [esp + 0x70]
dec eax
mov dword [esp + 0x70], eax
mov eax, dword [0x49fa98]
or eax, 0xcd9bb71c
mov dword [0x49fa98], eax
mov eax, dword [esp + 0x6c]
mov cl, byte [eax]
mov eax, dword [esp + 0x5c]
mov byte [esp + eax + 0x55], cl
mov eax, dword [0x4983d0]
xor eax, 0x1fe662d6
cmp eax, 0xebfae54
jg 0x407f9a
mov eax, dword [0x49517c]
imul eax, eax, 0x5dbc978a
and eax, 0x14118d6a
mov ecx, dword [0x499534]
xor ecx, eax
mov dword [0x499534], ecx
mov eax, dword [esp + 0x5c]
inc eax
mov dword [esp + 0x5c], eax
mov eax, dword [0x49da6c]
add eax, 0xcca9e889
mov dword [0x49da6c], eax
mov eax, dword [esp + 0x6c]
inc eax
mov dword [esp + 0x6c], eax
mov dword [0x4944ec], 0x6c2d49c4
cmp dword [esp + 0x5c], 3
jne 0x408426
mov ax, word [0x4a3bca]
movsx ecx, ax
shl ecx, 0xa
xor ecx, 0x67487938
mov edx, dword [0x49bf8c]
sar edx, 3
and edx, 0xe7075883
cmp ecx, edx
jle 0x408008
mov dword [0x49b19c], 0xe011454e
jmp 0x40806a
mov eax, dword [0x49b2f4]
mov ecx, eax
dec ecx
mov dword [0x49b2f4], ecx
sub eax, 0xf5199d0e
xor eax, 0xfb062927
cmp eax, 0x834928c3
jge 0x408065
mov eax, dword [0x49da20]
mov ecx, eax
inc ecx
mov dword [0x49da20], ecx
mov ecx, dword [0x49e788]
imul ecx, ecx, 0x2767e190
or eax, ecx
mov ecx, dword [0x4a1514]
and ecx, 0x67c753ca
cmp eax, ecx
jg 0x408060
jmp 0x408060
jmp 0x408065
jmp 0x40806a
mov eax, 0x68937da0
movzx ecx, byte [esp + 0x55]
shr ecx, 2
mov dl, cl
mov byte [esp + 0x51], dl
mov ecx, dword [0x4a14e0]
sar ecx, 3
mov esi, dword [0x49f1ec]
dec esi
mov dword [0x49f1ec], esi
mov edi, dword [0x49db60]
xor esi, edi
or ecx, esi
cmp eax, ecx
jle 0x4080c2
mov eax, dword [0x49a6d0]
or eax, 0xb3ab5a74
mov ecx, dword [0x4a031c]
sub ecx, eax
mov dword [0x4a031c], ecx
jmp 0x4080da
mov eax, dword [0x49e65c]
add eax, 0xdb17ab2e
mov ecx, dword [0x4950ec]
xor ecx, eax
mov dword [0x4950ec], ecx
movzx eax, byte [esp + 0x55]
and eax, 3
shl eax, 4
mov cl, al
mov byte [esp + 0x52], cl
mov eax, dword [0x49d610]
add eax, 0xa6e88844
mov dword [0x49d610], eax
movzx eax, byte [esp + 0x56]
shr eax, 4
movzx edx, byte [esp + 0x52]
add edx, eax
mov cl, dl
mov byte [esp + 0x52], cl
mov eax, dword [0x495dd4]
add eax, 0x976ae021
mov dword [0x495dd4], eax
movzx eax, byte [esp + 0x56]
and eax, 0xf
shl eax, 2
mov cl, al
mov byte [esp + 0x53], cl
mov si, word [0x4a5572]
mov ax, si
and eax, 0x957c
mov si, ax
mov word [0x4a5572], si
movzx eax, byte [esp + 0x57]
shr eax, 6
movzx edx, byte [esp + 0x53]
add edx, eax
mov cl, dl
mov byte [esp + 0x53], cl
mov eax, dword [0x497978]
dec eax
mov dword [0x497978], eax
mov si, ax
mov word [0x4a71c2], si
movzx eax, byte [esp + 0x57]
and eax, 0x3f
mov cl, al
mov byte [esp + 0x54], cl
mov eax, dword [0x4a0d34]
dec eax
mov dword [0x4a0d34], eax
mov edx, dword [0x49fcac]
sub edx, eax
mov dword [0x49fcac], edx
mov dword [esp + 0x5c], 0
mov eax, dword [0x496024]
add eax, 0xbcf6c67f
mov dword [0x496024], eax
cmp dword [esp + 0x5c], 4
je 0x4083b3
mov eax, dword [0x4a1a70]
add eax, 0x17a3e352
mov dword [0x4a1a70], eax
test byte [esp + 0x77], 1
je 0x40832b
mov eax, dword [esp + 0x5c]
movzx eax, byte [esp + eax + 0x51]
cmp eax, 0x3d
jle 0x40832b
mov ax, word [0x4a7852]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x4a7852], dx
movsx ecx, ax
xor ecx, 0x9b2be150
mov esi, dword [0x497cb0]
mov edi, esi
dec edi
mov dword [0x497cb0], edi
xor esi, 0x79a9f5d4
cmp ecx, esi
jg 0x408270
mov eax, dword [0x494db8]
mov ecx, eax
inc ecx
mov dword [0x494db8], ecx
add eax, 0x946a4603
and eax, 0x115dce91
mov ecx, dword [0x499558]
cmp eax, ecx
jne 0x40825c
mov eax, dword [0x49ed5c]
imul eax, eax, 0xc55dde93
mov dword [0x49ed5c], eax
jmp 0x40826b
mov eax, dword [0x49bcf4]
and eax, 0xbfffef76
mov dword [0x49bcf4], eax
jmp 0x408270
mov eax, dword [esp + 0x5c]
movzx eax, byte [esp + eax + 0x51]
cmp eax, 0x3e
jne 0x4082c4
mov eax, dword [0x4a0b1c]
add eax, 0xd7f2fcdf
mov dword [0x4a0b1c], eax
mov ecx, dword [esp + 0x78]
mov eax, esp
lea edx, [esp + 0x4d]
mov dword [eax], edx
call fcn.0044cce0
sub esp, 4
mov si, word [0x4a7ae8]
movsx ecx, si
xor ecx, 0x7bede3e3
mov dword [0x496418], ecx
mov dword [esp + 0x30], eax
jmp 0x408305
mov eax, dword [0x49cd08]
add eax, 0xdebb38c1
mov dword [0x49cd08], eax
mov ecx, dword [esp + 0x78]
mov eax, esp
lea edx, [esp + 0x49]
mov dword [eax], edx
call fcn.0044cce0
sub esp, 4
mov si, word [0x4a8408]
mov cx, si
add ecx, 0x6805c21
mov si, cx
mov word [0x4a8408], si
mov dword [esp + 0x2c], eax
mov eax, dword [0x49db20]
inc eax
mov dword [0x49db20], eax
mov cx, word [0x4a5e14]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x4a5e14], cx
jmp 0x408387
mov eax, dword [0x49ec64]
and eax, 0x59a69999
xor eax, 0xd6f0b53e
mov ecx, dword [0x49fe30]
add ecx, eax
mov dword [0x49fe30], ecx
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.00450f70
sub esp, 4
mov si, word [0x4a2414]
mov cx, si
xor ecx, 0x60ec
mov si, cx
mov word [0x4a2414], si
mov dword [esp + 0x28], eax
mov eax, dword [0x49d7a4]
add eax, 0x62cc1480
mov dword [0x49d7a4], eax
mov eax, dword [esp + 0x5c]
inc eax
mov dword [esp + 0x5c], eax
mov eax, dword [0x49cd30]
or eax, 0xb49ee3ea
mov dword [0x49cd30], eax
jmp 0x4081b0
mov eax, dword [0x499b34]
mov ecx, eax
dec ecx
mov dword [0x499b34], ecx
mov ecx, dword [0x49af54]
add ecx, eax
mov dword [0x49af54], ecx
mov dword [esp + 0x5c], 0
mov eax, dword [0x4a18d8]
mov ecx, dword [0x495f0c]
not ecx
and eax, ecx
mov dx, word [0x4a7b60]
mov cx, dx
dec ecx
mov dx, cx
mov word [0x4a7b60], dx
movsx ecx, dx
add ecx, 0x9ad8cd80
and ecx, 0x53b8c039
cmp eax, ecx
jl 0x408421
mov eax, dword [0x4996d0]
or eax, 0xbf4bb9a7
mov dword [0x4996d0], eax
jmp 0x408426
mov eax, dword [0x4a00e8]
mov ecx, 0x9bcc5797
sub ecx, eax
xor ecx, 0x584d44ce
mov dword [0x494904], ecx
jmp 0x407ef7
mov eax, dword [0x49ad9c]
add eax, 0xb5c61139
mov dword [0x49ad9c], eax
cmp dword [esp + 0x5c], 0
je 0x408a2d
mov ax, word [0x4a46e0]
mov cx, ax
mov ax, word [0x4a3ee8]
mov dx, ax
sub edx, ecx
mov ax, dx
mov word [0x4a3ee8], ax
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x58], ecx
mov ecx, dword [0x495b78]
or ecx, 0xa006c00a
mov edx, dword [0x49b134]
and edx, ecx
mov dword [0x49b134], edx
cmp dword [esp + 0x58], 3
jge 0x4084f6
mov eax, dword [0x49b1c0]
mov ecx, eax
inc ecx
mov dword [0x49b1c0], ecx
and eax, 0x2fee8e6e
mov dword [0x49b7f0], eax
mov eax, dword [esp + 0x58]
mov byte [esp + eax + 0x55], 0
mov eax, dword [0x497494]
imul eax, eax, 0x3080200
mov dword [0x497494], eax
mov eax, dword [esp + 0x58]
inc eax
mov dword [esp + 0x58], eax
mov eax, dword [0x49cea0]
imul eax, eax, 0x18c348ee
mov dword [0x49cea0], eax
jmp 0x40849c
mov eax, dword [0x49ccfc]
or eax, 0x7d50fcee
mov dword [0x49ccfc], eax
movzx eax, byte [esp + 0x55]
shr eax, 2
mov cl, al
mov byte [esp + 0x51], cl
mov eax, dword [0x49793c]
mov dx, word [0x4a1fc0]
mov si, dx
add esi, eax
mov dx, si
mov word [0x4a1fc0], dx
movzx eax, byte [esp + 0x55]
and eax, 3
shl eax, 4
mov cl, al
mov byte [esp + 0x52], cl
mov eax, dword [0x49a900]
shl eax, 0xa
xor eax, 0xb8b0d296
mov esi, dword [0x4975b0]
add esi, eax
mov dword [0x4975b0], esi
movzx eax, byte [esp + 0x56]
shr eax, 4
movzx esi, byte [esp + 0x52]
add esi, eax
mov eax, esi
mov cl, al
mov byte [esp + 0x52], cl
mov eax, dword [0x498b10]
add eax, 0x9ed3e756
mov dword [0x498b10], eax
movzx eax, byte [esp + 0x56]
and eax, 0xf
shl eax, 2
mov cl, al
mov byte [esp + 0x53], cl
mov eax, dword [0x494060]
mov esi, eax
dec esi
mov dword [0x494060], esi
mov dx, word [0x4a635c]
mov si, dx
dec esi
mov dx, si
mov word [0x4a635c], dx
movsx esi, dx
sub eax, esi
mov esi, dword [0x4a1930]
add esi, eax
mov dword [0x4a1930], esi
movzx eax, byte [esp + 0x57]
shr eax, 6
movzx esi, byte [esp + 0x53]
add esi, eax
mov eax, esi
mov cl, al
mov byte [esp + 0x53], cl
mov dx, word [0x4a6824]
mov ax, dx
inc eax
mov dx, ax
mov word [0x4a6824], dx
movsx eax, dx
imul eax, eax, 0xcbe24df9
xor eax, 0x9c84a3a8
mov esi, dword [0x499c7c]
and esi, eax
mov dword [0x499c7c], esi
movzx eax, byte [esp + 0x57]
and eax, 0x3f
mov cl, al
mov byte [esp + 0x54], cl
mov eax, dword [0x49f9e4]
and eax, 0x867d8082
mov dword [0x49f9e4], eax
mov dword [esp + 0x58], 0
mov eax, dword [0x49fdcc]
and eax, 0x66692688
mov dword [0x49fdcc], eax
mov eax, dword [0x49c1ec]
add eax, 0x83a4c93b
and eax, 0x92dbf3a3
mov dword [0x4952d4], eax
mov eax, dword [esp + 0x58]
cmp eax, dword [esp + 0x5c]
jle 0x408674
mov dword [0x4a1784], 0xdc8db8e9
jmp 0x4088eb
mov ax, word [0x4a721a]
mov cx, ax
and ecx, 0xc764
mov ax, cx
mov word [0x4a721a], ax
test byte [esp + 0x77], 1
je 0x4087f2
mov eax, dword [esp + 0x58]
movzx eax, byte [esp + eax + 0x51]
cmp eax, 0x3d
jle 0x4087f2
mov eax, 0x51480430
mov ecx, dword [0x499438]
sub ecx, 0x8dd6f8f0
and ecx, 0x61919ae1
cmp eax, ecx
je 0x4086dc
mov eax, dword [0x4970b4]
and eax, 0x7f4cc028
mov dword [0x4970b4], eax
jmp 0x4086eb
mov eax, dword [0x4a1640]
xor eax, 0x267c9d99
mov dword [0x4a1640], eax
mov eax, dword [esp + 0x58]
movzx eax, byte [esp + eax + 0x51]
cmp eax, 0x3e
jne 0x40876e
mov eax, 0xda05fe22
mov ecx, dword [0x49810c]
add ecx, 0x12dab083
add ecx, 0xc9491565
cmp eax, ecx
jl 0x408730
mov eax, dword [0x49d740]
add eax, 0xbb07b249
mov dword [0x49d740], eax
jmp 0x40873f
mov ax, word [0x4a21f4]
movsx ecx, ax
mov dword [0x4985fc], ecx
mov ecx, dword [esp + 0x78]
mov eax, esp
lea edx, [esp + 0x4d]
mov dword [eax], edx
call fcn.0044cce0
sub esp, 4
mov ecx, dword [0x49f17c]
or ecx, 0xfc0bc3ef
mov dword [0x49f17c], ecx
mov dword [esp + 0x24], eax
jmp 0x4087cf
mov eax, 0x2747433a
mov cx, word [0x4a4c62]
mov dx, cx
or edx, 0xd43
mov cx, dx
mov word [0x4a4c62], cx
mov ecx, dword [esp + 0x78]
mov edx, esp
lea esi, [esp + 0x49]
mov dword [edx], esi
mov dword [esp + 0x20], eax
call fcn.0044cce0
sub esp, 4
mov ecx, dword [0x49dacc]
mov edx, dword [esp + 0x20]
cmp edx, ecx
mov dword [esp + 0x1c], eax
jl 0x4087ca
mov eax, dword [0x494ca4]
add eax, 0xd2be276f
mov dword [0x494ca4], eax
jmp 0x4087cf
mov eax, dword [0x4998c4]
imul eax, eax, 0x94d0d077
or eax, 0x25ebcf7b
mov ecx, dword [0x49dde0]
xor ecx, eax
mov dword [0x49dde0], ecx
jmp 0x4088bf
mov ax, word [0x4a53a2]
movsx ecx, ax
add ecx, 0xb1c349ef
cmp ecx, 0x1b004388
je 0x408852
mov eax, 0x2fae5742
mov ecx, dword [0x4962c8]
mov dx, word [0x4a4e4a]
movsx esi, dx
shl esi, 4
imul esi, esi, 0x697bd7d1
add ecx, esi
cmp eax, ecx
jl 0x40884d
mov eax, dword [0x499980]
mov ecx, 0xbf7b535d
sub ecx, eax
mov eax, dword [0x494bac]
sub eax, ecx
mov dword [0x494bac], eax
jmp 0x408852
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.00450f70
sub esp, 4
mov ecx, dword [0x4a17a0]
inc ecx
mov dword [0x4a17a0], ecx
mov edx, dword [0x4a00c0]
inc edx
mov dword [0x4a00c0], edx
cmp ecx, edx
mov dword [esp + 0x18], eax
jg 0x4088ba
mov eax, dword [0x49e4e4]
sar eax, 0xa
mov ecx, 0x9904f2c8
sub ecx, eax
or ecx, 0xa58d2437
mov eax, dword [0x49947c]
add eax, ecx
mov dword [0x49947c], eax
jmp 0x4088bf
mov eax, dword [0x4994fc]
and eax, 0x82d4cb42
mov dword [0x4994fc], eax
mov eax, dword [esp + 0x58]
inc eax
mov dword [esp + 0x58], eax
mov eax, dword [0x499f68]
add eax, 0x1f8744f6
mov dword [0x499f68], eax
jmp 0x408643
jmp 0x4088f0
cmp dword [esp + 0x5c], 3
jge 0x408a1e
mov dword [0x49c6f4], 0xd10fbb05
mov eax, dword [esp + 0x5c]
inc eax
mov dword [esp + 0x5c], eax
mov eax, dword [0x49b0e0]
imul eax, eax, 0x2283e8fc
mov ecx, dword [0x494a84]
xor eax, ecx
xor eax, 0x38ef2db3
mov dword [0x494a84], eax
test byte [esp + 0x77], 1
je 0x40897b
mov eax, dword [0x49cb58]
imul eax, eax, 0xde1200f6
mov dword [0x49cb58], eax
mov ecx, dword [esp + 0x78]
mov eax, esp
lea edx, [esp + 0x45]
mov dword [eax], edx
call fcn.0044cce0
sub esp, 4
mov si, word [0x4a3ca6]
movsx ecx, si
mov edx, dword [0x4a0520]
add edx, ecx
mov dword [0x4a0520], edx
mov dword [esp + 0x14], eax
jmp 0x408a0a
mov eax, dword [0x49b4a0]
mov ecx, eax
dec ecx
mov dword [0x49b4a0], ecx
or eax, 0x84b54cec
mov ecx, dword [0x4969ac]
xor ecx, eax
mov dword [0x4969ac], ecx
mov ecx, dword [esp + 0x78]
mov eax, esp
mov dword [eax], 0x3d
call fcn.00450f70
sub esp, 4
mov ecx, dword [0x495634]
mov edx, ecx
dec edx
mov dword [0x495634], edx
mov edx, 0x87703c47
sub edx, ecx
xor edx, 0x6b9e7c17
mov ecx, dword [0x4958d4]
mov esi, ecx
dec esi
mov dword [0x4958d4], esi
and ecx, 0x82d05705
cmp edx, ecx
mov dword [esp + 0x10], eax
jne 0x408a05
mov ax, word [0x4a7c62]
mov cx, ax
imul ecx, ecx, 0xc917a2ac
mov ax, cx
mov word [0x4a7c62], ax
jmp 0x408a0a
mov eax, dword [0x497888]
or eax, 0x38bd1cf0
mov dword [0x497888], eax
jmp 0x4088f0
mov eax, dword [0x4a1a68]
and eax, 0x906821b7
mov dword [0x4a1a68], eax
mov eax, dword [0x4961f0]
mov ecx, eax
inc ecx
mov dword [0x4961f0], ecx
imul eax, eax, 0xb27f168c
or eax, 0x7c7cea54
cmp eax, 0x48720488
jle 0x408a61
mov eax, dword [0x4996d4]
imul eax, eax, 0xeeb05fb
mov dword [0x4996d4], eax
mov eax, 0xf8fffdfe
mov ecx, dword [esp + 0x40]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x41
mov dword [esp + 0xc], eax
call fcn.004097d0
mov si, word [0x4a8076]
mov ax, si
add eax, 0xd77f746a
mov si, ax
mov word [0x4a8076], si
mov eax, esp
lea ecx, [esp + 0x4d]
mov dword [eax], ecx
mov dword [eax + 4], 4
call fcn.004154b0
mov eax, dword [0x4a0068]
shl eax, 0xa
xor eax, 0xc0a6aa92
mov ecx, dword [esp + 0xc]
cmp ecx, eax
jg 0x408ae2
mov eax, dword [0x49b92c]
inc eax
mov dword [0x49b92c], eax
or eax, 0x7494e8df
mov ecx, dword [0x49acd4]
sub ecx, eax
mov dword [0x49acd4], ecx
mov eax, 0xffebabf6
mov ecx, esp
lea edx, [esp + 0x49]
mov dword [ecx], edx
mov dword [ecx + 4], 4
mov dword [esp + 8], eax
call fcn.004154b0
mov eax, dword [0x4a073c]
mov ecx, dword [0x49b950]
sub eax, ecx
mov ecx, dword [0x495d90]
mov edx, ecx
dec edx
mov dword [0x495d90], edx
and eax, ecx
mov ecx, dword [esp + 8]
cmp ecx, eax
je 0x408b38
mov eax, dword [0x494608]
or eax, 0xc331cdc9
mov dword [0x49bce8], eax
mov eax, esp
lea ecx, [esp + 0x45]
mov dword [eax], ecx
mov dword [eax + 4], 4
call fcn.004154b0
mov dx, word [0x4a39be]
mov ax, dx
inc eax
mov si, ax
mov word [0x4a39be], si
movsx eax, dx
mov ecx, dword [0x497b58]
and ecx, eax
mov dword [0x497b58], ecx
add esp, 0x7c
pop esi
pop edi
ret