Function at 0x42c1f0
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 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 [0x4924b8]
and eax, 0xcf7dfbbc
mov dword [0x4924b8], eax
mov di, word [0x48f892]
movsx eax, di
xor eax, 0xffffffff
imul eax, eax, 0x41628928
cmp eax, 0x65c49ff8
jle 0x42c261
mov eax, dword [0x4974a4]
or eax, 0x8e33f225
mov dword [0x4974a4], eax
mov ax, word [0x48ec12]
mov cx, ax
add ecx, 0xfbfdbfec
mov ax, cx
mov word [0x48ec12], ax
mov ax, word [0x490d0a]
mov cx, ax
or ecx, 0x3300
mov ax, cx
mov word [0x490d0a], ax
mov dword [esp + 0x5c], 0
mov dword [0x496e90], 0xce4ba217
mov dword [esp + 0x58], 0
mov ax, word [0x491062]
movsx ecx, ax
shl ecx, 9
cmp ecx, 0xff7f5efe
jge 0x42c306
mov eax, dword [0x4978c4]
mov ecx, eax
dec ecx
mov dword [0x4978c4], ecx
xor eax, 0x4634367e
mov ecx, dword [0x493104]
dec ecx
mov dword [0x493104], ecx
and ecx, 0x30cb2279
xor ecx, 0xd6c48593
cmp eax, ecx
jg 0x42c301
mov dword [0x49706c], 0xc2c98c99
jmp 0x42c306
mov eax, 0x3c3d2362
mov ecx, esp
mov dword [ecx + 4], 0x41
mov dword [ecx], 0x6bb2
mov dword [esp + 0x3c], eax
call fcn.00443650
mov dword [esp + 0x40], eax
mov dx, word [0x48ead2]
mov ax, dx
and eax, 0xd0b5
mov dx, ax
mov word [0x48ead2], dx
mov eax, esp
mov dword [eax + 4], 4
mov dword [eax], 0x2e75
call fcn.00443650
mov dword [esp + 0x68], eax
mov dx, word [0x48dfcc]
mov ax, dx
add eax, 0x71fb73dc
mov ecx, dword [0x494700]
dec ecx
mov dword [0x494700], ecx
or eax, ecx
mov dx, word [0x48fbf6]
mov cx, dx
and ecx, eax
mov dx, cx
mov word [0x48fbf6], dx
mov eax, dword [esp + 0x68]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x4d]
mov dword [ecx], eax
call fcn.00455810
mov ecx, dword [0x497b70]
mov esi, dword [esp + 0x3c]
cmp esi, ecx
mov dword [esp + 0x38], eax
jle 0x42c3f1
mov ax, word [0x49005e]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x49005e], dx
movsx ecx, ax
mov esi, dword [0x492a24]
dec esi
mov dword [0x492a24], esi
imul ecx, esi
and ecx, 0xfda4b771
mov esi, dword [0x495a24]
add esi, ecx
mov dword [0x495a24], esi
mov eax, 0x19c8384
mov ecx, esp
mov dword [ecx + 4], 4
mov dword [ecx], 0x41aa
mov dword [esp + 0x34], eax
call fcn.00443650
mov dword [esp + 0x64], eax
mov dx, word [0x48fc98]
movsx eax, dx
shl eax, 2
mov ecx, dword [0x4978f4]
mov esi, 0xbbd48ab5
sub esi, ecx
and eax, esi
mov ecx, dword [0x49602c]
or ecx, eax
mov dword [0x49602c], ecx
mov eax, dword [esp + 0x68]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 4
call fcn.00428120
mov eax, dword [0x496d48]
xor eax, 0x18ec15ce
mov dword [0x496d48], eax
mov eax, dword [esp + 0x64]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x49]
mov dword [ecx], eax
call fcn.00455810
mov ecx, dword [0x4952e4]
and ecx, 0x1f5432bb
xor ecx, 0x241bdcf1
mov esi, dword [0x496a68]
imul esi, ecx
mov dword [0x496a68], esi
mov ecx, esp
mov dword [ecx + 4], 4
mov dword [ecx], 0x2982
mov dword [esp + 0x30], eax
call fcn.00443650
mov dword [esp + 0x60], eax
mov eax, dword [0x491628]
mov ecx, eax
dec ecx
mov dword [0x491628], ecx
sub eax, 0xa9438dca
mov ecx, dword [esp + 0x34]
cmp ecx, eax
jle 0x42c4de
mov eax, dword [0x493010]
and eax, 0x470116d5
mov dword [0x493010], eax
mov eax, dword [esp + 0x64]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 4
call fcn.00428120
mov eax, dword [0x493830]
and eax, 0xfe511799
mov dword [0x493830], eax
mov eax, dword [esp + 0x60]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x45]
mov dword [ecx], eax
call fcn.00455810
mov ecx, dword [0x4946c8]
imul ecx, ecx, 0x9d3017c7
add ecx, 0x640a7350
mov edx, dword [0x4911d8]
and edx, ecx
mov dword [0x4911d8], edx
mov ecx, dword [esp + 0x60]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 4
mov dword [esp + 0x2c], eax
call fcn.00428120
mov eax, dword [0x493914]
mov si, word [0x48f4d8]
movsx ecx, si
imul eax, ecx
mov ecx, dword [0x492b4c]
or ecx, eax
mov dword [0x492b4c], ecx
cmp dword [esp + 0x70], 0
je 0x42cb4a
mov ax, word [0x4902c8]
mov cx, ax
add ecx, 0x80c66af0
mov ax, cx
mov word [0x4902c8], ax
mov ecx, dword [esp + 0x70]
dec ecx
mov dword [esp + 0x70], ecx
mov ecx, dword [0x497c98]
sub ecx, 0x5940fbf0
and ecx, 0xd0b6fb32
cmp ecx, 0x3f38bf9c
jle 0x42c5f6
mov eax, 0xe38d5aea
mov ecx, dword [0x497694]
xor ecx, 0x35d4d135
cmp eax, ecx
jge 0x42c5f1
mov eax, 0xbea0a0ac
mov cx, word [0x490c94]
movsx edx, cx
cmp eax, edx
jg 0x42c5ec
jmp 0x42c5ec
jmp 0x42c5f1
jmp 0x42c5f6
mov eax, dword [esp + 0x6c]
mov cl, byte [eax]
mov eax, dword [esp + 0x5c]
mov byte [esp + eax + 0x55], cl
mov eax, dword [0x493734]
add eax, 0xd354490f
mov dx, word [0x490f5a]
mov si, dx
and esi, eax
mov dx, si
mov word [0x490f5a], dx
mov eax, dword [esp + 0x5c]
inc eax
mov dword [esp + 0x5c], eax
mov dx, word [0x48ed1a]
movsx eax, dx
or eax, 0x5d7d7fa1
mov esi, dword [0x491fe4]
cmp eax, esi
je 0x42c664
mov eax, dword [0x492d68]
add eax, eax
xor eax, 0xb029cb50
mov ecx, dword [0x494688]
and ecx, eax
mov dword [0x494688], ecx
mov eax, dword [esp + 0x6c]
inc eax
mov dword [esp + 0x6c], eax
mov cx, word [0x48df54]
mov ax, cx
add eax, 0x564aa2dd
mov cx, ax
mov word [0x48df54], cx
cmp dword [esp + 0x5c], 3
jne 0x42cb2d
mov eax, 0x61e0a827
mov ecx, dword [0x4931a8]
inc ecx
mov dword [0x4931a8], ecx
mov dx, word [0x48e0d0]
mov si, dx
dec esi
mov di, si
mov word [0x48e0d0], di
movsx esi, dx
or ecx, esi
cmp eax, ecx
jle 0x42c6ec
mov eax, dword [0x4942d8]
not eax
and eax, 0x7b92
mov cx, word [0x48f210]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x48f210], cx
jmp 0x42c704
mov ax, word [0x4903ac]
mov cx, ax
imul ecx, ecx, 0x65c1818b
mov ax, cx
mov word [0x4903ac], ax
mov eax, 0x9c503325
movzx ecx, byte [esp + 0x55]
shr ecx, 2
mov dl, cl
mov byte [esp + 0x51], dl
mov ecx, dword [0x493ed8]
xor ecx, 0x5000c030
mov dword [0x493ed8], ecx
movzx ecx, byte [esp + 0x55]
and ecx, 3
shl ecx, 4
mov dl, cl
mov byte [esp + 0x52], dl
mov si, word [0x48f7fc]
movsx ecx, si
mov edi, dword [0x494bf8]
sub edi, ecx
mov dword [0x494bf8], edi
movzx ecx, byte [esp + 0x56]
shr ecx, 4
movzx edi, byte [esp + 0x52]
add edi, ecx
mov ecx, edi
mov dl, cl
mov byte [esp + 0x52], dl
mov ecx, dword [0x492394]
xor ecx, 0x1652f713
mov edi, dword [0x49681c]
and edi, ecx
mov dword [0x49681c], edi
movzx ecx, byte [esp + 0x56]
and ecx, 0xf
shl ecx, 2
mov dl, cl
mov byte [esp + 0x53], dl
mov ecx, dword [0x4976a8]
add ecx, 0x2d8f8013
mov dword [0x4976a8], ecx
movzx ecx, byte [esp + 0x57]
shr ecx, 6
movzx edi, byte [esp + 0x53]
add edi, ecx
mov ecx, edi
mov dl, cl
mov byte [esp + 0x53], dl
mov ecx, dword [0x4922dc]
imul ecx, ecx, 0xe95082e0
mov dword [0x4922dc], ecx
movzx ecx, byte [esp + 0x57]
and ecx, 0x3f
mov dl, cl
mov byte [esp + 0x54], dl
mov ecx, dword [0x491640]
mov edi, ecx
inc edi
mov dword [0x491640], edi
cmp eax, ecx
jl 0x42c803
mov eax, dword [0x4937c8]
add eax, 0x7e48765
mov dword [0x4937c8], eax
mov dword [esp + 0x5c], 0
mov eax, dword [0x4978a8]
imul eax, eax, 0x1f3ecb2d
mov dword [0x4978a8], eax
cmp dword [esp + 0x5c], 4
je 0x42cacc
mov eax, dword [0x4923c8]
mov ecx, eax
dec ecx
mov dword [0x4923c8], ecx
imul eax, eax, 0xcbd87d16
add eax, 0x58fff668
mov dx, word [0x490398]
mov cx, dx
sub ecx, eax
mov dx, cx
mov word [0x490398], dx
test byte [esp + 0x77], 1
je 0x42c9ac
mov eax, dword [esp + 0x5c]
movzx eax, byte [esp + eax + 0x51]
cmp eax, 0x3d
jle 0x42c9ac
mov eax, dword [0x49407c]
mov ecx, eax
inc ecx
mov dword [0x49407c], ecx
mov ecx, dword [0x495d0c]
imul ecx, ecx, 0x459e7ecb
add eax, ecx
mov ecx, dword [0x494c88]
add ecx, eax
mov dword [0x494c88], ecx
mov eax, dword [esp + 0x5c]
movzx eax, byte [esp + eax + 0x51]
cmp eax, 0x3e
jne 0x42c8ec
mov eax, dword [0x4920a8]
or eax, 0x26b0d0fb
mov dword [0x4920a8], eax
mov ecx, dword [esp + 0x78]
mov eax, esp
lea edx, [esp + 0x4d]
mov dword [eax], edx
call fcn.004413d0
sub esp, 4
mov ecx, dword [0x4963f4]
or ecx, 0x318f06
mov dword [0x4963f4], ecx
mov dword [esp + 0x28], eax
jmp 0x42c958
mov ax, word [0x49088e]
movsx ecx, ax
sar ecx, 2
and ecx, 0x44c4f7da
mov edx, dword [0x492974]
dec edx
mov dword [0x492974], edx
imul edx, edx, 0xc2e068e1
cmp ecx, edx
jg 0x42c923
mov dword [0x492d70], 0x78b20605
mov ecx, dword [esp + 0x78]
mov eax, esp
lea edx, [esp + 0x49]
mov dword [eax], edx
call fcn.004413d0
sub esp, 4
mov ecx, dword [0x497414]
sar ecx, 7
imul ecx, ecx, 0xae53f11c
mov edx, dword [0x494f58]
add edx, ecx
mov dword [0x494f58], edx
mov dword [esp + 0x24], eax
mov eax, dword [0x492688]
add eax, 0xaf26f700
mov cx, word [0x48f046]
mov dx, cx
dec edx
mov si, dx
mov word [0x48f046], si
movsx edx, cx
xor edx, 0x793a4097
cmp eax, edx
jge 0x42c9a7
mov eax, dword [0x495c98]
imul eax, eax, 0xd9436356
and eax, 0xdeed7642
mov ecx, dword [0x4960bc]
imul ecx, eax
mov dword [0x4960bc], ecx
jmp 0x42ca39
mov ax, word [0x48f7c0]
mov cx, ax
add ecx, 0x93539992
mov ax, cx
mov word [0x48f7c0], ax
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x5c]
movzx edx, byte [esp + edx + 0x51]
mov esi, dword [esp + 0x40]
movsx edx, byte [esi + edx]
mov esi, esp
mov dword [esi], edx
call fcn.00410930
sub esp, 4
mov ecx, dword [0x4929f8]
mov edx, dword [0x492024]
xor edx, 0xb05af0e0
cmp ecx, edx
mov dword [esp + 0x20], eax
jg 0x42ca25
mov eax, 0x9e72fba2
mov ecx, dword [0x492ce8]
cmp eax, ecx
jle 0x42ca20
mov dword [0x491fe0], 0xa82c4864
jmp 0x42ca34
mov eax, dword [0x4927b8]
and eax, 0xc2dd9d7f
mov dword [0x4927b8], eax
jmp 0x42ca39
mov eax, 0x25e66c97
mov ecx, dword [0x493984]
mov edx, ecx
dec edx
mov dword [0x493984], edx
sub ecx, 0x1bfbcb5a
cmp eax, ecx
jle 0x42ca6f
mov eax, dword [0x493914]
add eax, 0xf9efec7f
mov dword [0x493914], eax
jmp 0x42ca87
mov ax, word [0x490bfc]
mov cx, ax
xor ecx, 0xdbb7
mov ax, cx
mov word [0x490bfc], ax
mov eax, dword [esp + 0x5c]
inc eax
mov dword [esp + 0x5c], eax
mov eax, dword [0x4914c0]
sar eax, 7
add eax, 0xc5c5cf1c
mov ecx, dword [0x494274]
inc ecx
mov dword [0x494274], ecx
and ecx, 0x984169b5
cmp eax, ecx
jne 0x42cac7
mov eax, dword [0x491c0c]
add eax, 0xf7f7ff7c
mov dword [0x491c0c], eax
jmp 0x42c81b
mov eax, dword [0x494ad8]
mov ecx, eax
inc ecx
mov dword [0x494ad8], ecx
mov ecx, dword [0x496bec]
mov edx, ecx
dec edx
mov dword [0x496bec], edx
sub eax, ecx
mov ecx, dword [0x492c90]
imul ecx, eax
mov dword [0x492c90], ecx
mov dword [esp + 0x5c], 0
mov si, word [0x490e82]
mov ax, si
dec eax
mov di, ax
mov word [0x490e82], di
movsx eax, si
and eax, 0xa38e4583
mov ecx, dword [0x496538]
add ecx, eax
mov dword [0x496538], ecx
mov ax, word [0x48e5d6]
mov cx, ax
add ecx, 0xfffee780
mov ax, cx
mov word [0x48e5d6], ax
jmp 0x42c56d
mov eax, dword [0x493664]
imul eax, eax, 0xee114621
mov dword [0x493664], eax
cmp dword [esp + 0x5c], 0
je 0x42d21c
mov eax, dword [0x496e68]
imul eax, eax, 0xcfee4699
mov dword [0x496e68], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x58], eax
mov eax, dword [0x493180]
add eax, 0xf89cf7b
mov dword [0x493180], eax
cmp dword [esp + 0x58], 3
jge 0x42cc29
mov eax, 0x9addb027
mov ecx, dword [0x494550]
inc ecx
mov dword [0x494550], ecx
and ecx, 0xaf5b1927
mov edx, dword [0x493fe8]
imul edx, ecx
mov dword [0x493fe8], edx
mov ecx, dword [esp + 0x58]
mov byte [esp + ecx + 0x55], 0
mov si, word [0x48e4ac]
mov cx, si
inc ecx
mov di, cx
mov word [0x48e4ac], di
movsx ecx, si
cmp eax, ecx
jg 0x42cc02
mov eax, dword [0x492bb4]
sar eax, 1
imul eax, eax, 0x25378def
mov ecx, dword [0x496344]
xor ecx, eax
mov dword [0x496344], ecx
mov eax, dword [esp + 0x58]
inc eax
mov dword [esp + 0x58], eax
mov cx, word [0x49046c]
mov ax, cx
or eax, 0xe55a
mov cx, ax
mov word [0x49046c], cx
jmp 0x42cb8c
mov eax, 0x94ce5e88
mov cx, word [0x48fe4a]
movsx edx, cx
and edx, 0x4c18edc3
mov esi, dword [0x494e20]
or esi, edx
mov dword [0x494e20], esi
movzx edx, byte [esp + 0x55]
shr edx, 2
mov bl, dl
mov byte [esp + 0x51], bl
mov cx, word [0x48e68a]
mov dx, cx
mov esi, edx
dec esi
mov cx, si
mov word [0x48e68a], cx
imul edx, edx, 0x1b402261
mov esi, dword [0x496998]
mov edi, esi
inc edi
mov dword [0x496998], edi
sub edx, esi
mov cx, word [0x4902fe]
mov si, cx
or esi, edx
mov cx, si
mov word [0x4902fe], cx
movzx edx, byte [esp + 0x55]
and edx, 3
shl edx, 4
mov bl, dl
mov byte [esp + 0x52], bl
mov edx, dword [0x495cb4]
and edx, 0x43a90b32
mov dword [0x495cb4], edx
movzx edx, byte [esp + 0x56]
shr edx, 4
movzx esi, byte [esp + 0x52]
add esi, edx
mov edx, esi
mov bl, dl
mov byte [esp + 0x52], bl
mov edx, dword [0x495268]
add edx, 0x3072b8eb
and edx, 0xae98e330
cmp eax, edx
je 0x42cd01
mov eax, dword [0x495fc8]
add eax, 0x59149c7d
mov dword [0x495fc8], eax
movzx eax, byte [esp + 0x56]
and eax, 0xf
shl eax, 2
mov cl, al
mov byte [esp + 0x53], cl
mov eax, dword [0x493238]
add eax, 0xe7f7fb9a
mov dword [0x493238], eax
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 [0x497ae4]
xor eax, 0x1e0604f0
mov dword [0x497ae4], eax
movzx eax, byte [esp + 0x57]
and eax, 0x3f
mov cl, al
mov byte [esp + 0x54], cl
mov eax, dword [0x494334]
dec eax
mov dword [0x494334], eax
or eax, 0x8b8c
mov si, word [0x48f366]
mov dx, si
sub edx, eax
mov si, dx
mov word [0x48f366], si
mov dword [esp + 0x58], 0
mov eax, dword [0x492b68]
mov edx, eax
inc edx
mov dword [0x492b68], edx
or eax, 0xf3faffee
mov dword [0x494758], eax
mov ax, word [0x4904fe]
mov cx, ax
or ecx, 0x2493
mov ax, word [0x490cae]
mov dx, ax
imul edx, ecx
mov ax, dx
mov word [0x490cae], ax
mov ecx, dword [esp + 0x58]
cmp ecx, dword [esp + 0x5c]
jle 0x42cdf2
mov eax, 0x4ad505dc
mov ecx, dword [0x494214]
cmp eax, ecx
je 0x42cded
mov eax, dword [0x4948f0]
xor eax, 0x95c93116
mov dword [0x4948f0], eax
jmp 0x42d0bb
mov eax, dword [0x4950a8]
dec eax
mov dword [0x4950a8], eax
imul eax, eax, 0x86b47ab0
mov ecx, dword [0x4960e0]
xor ecx, eax
mov dword [0x4960e0], ecx
test byte [esp + 0x77], 1
je 0x42d002
mov eax, dword [esp + 0x58]
movzx eax, byte [esp + eax + 0x51]
cmp eax, 0x3d
jle 0x42d002
mov eax, dword [0x49308c]
xor eax, 0x369ff762
mov dword [0x49308c], eax
mov eax, dword [esp + 0x58]
movzx eax, byte [esp + eax + 0x51]
cmp eax, 0x3e
jne 0x42cebb
mov ax, word [0x48df5a]
movsx ecx, ax
mov edx, dword [0x492538]
imul ecx, edx
mov edx, dword [0x494774]
sar edx, 0xa
sub ecx, edx
mov edx, dword [0x492510]
and edx, ecx
mov dword [0x492510], edx
mov ecx, dword [esp + 0x78]
mov edx, esp
lea esi, [esp + 0x4d]
mov dword [edx], esi
call fcn.004413d0
sub esp, 4
mov di, word [0x48fa12]
mov cx, di
inc ecx
mov di, cx
mov word [0x48fa12], di
movsx ecx, di
xor ecx, 0x9454884
mov dword [0x493128], ecx
mov dword [esp + 0x1c], eax
jmp 0x42cf30
mov eax, dword [0x492ed8]
mov ecx, dword [0x493608]
xor eax, ecx
not eax
mov ecx, dword [0x4935f4]
inc ecx
mov dword [0x4935f4], ecx
cmp eax, ecx
jne 0x42cf06
mov eax, dword [0x497668]
mov ecx, eax
inc ecx
mov dword [0x497668], ecx
mov ecx, 0x11d6fe2b
sub ecx, eax
and ecx, 0xc3147f97
mov eax, dword [0x494120]
xor eax, ecx
mov dword [0x494120], eax
mov ecx, dword [esp + 0x78]
mov eax, esp
lea edx, [esp + 0x49]
mov dword [eax], edx
call fcn.004413d0
sub esp, 4
mov ecx, dword [0x4933d4]
add ecx, 0xc0c29de7
mov dword [0x4933d4], ecx
mov dword [esp + 0x18], eax
mov eax, 0x91c17e1e
mov cx, word [0x48db9a]
mov dx, cx
inc edx
mov si, dx
mov word [0x48db9a], si
movsx edx, cx
imul edx, edx, 0x8cb00a16
cmp eax, edx
jge 0x42cffd
mov ax, word [0x48f950]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x48f950], dx
movsx ecx, ax
imul ecx, ecx, 0x228ebdbb
and ecx, 0x426bff7a
mov esi, dword [0x4960d0]
mov edi, esi
dec edi
mov dword [0x4960d0], edi
imul esi, esi, 0x75f49b16
add esi, 0x18235222
cmp ecx, esi
jg 0x42cfbe
mov ax, word [0x490b66]
mov cx, ax
add ecx, 0x70011aec
mov ax, cx
mov word [0x490b66], ax
jmp 0x42cff8
mov eax, dword [0x493040]
mov ecx, eax
dec ecx
mov dword [0x493040], ecx
add eax, 0xb8403c59
mov ecx, dword [0x4931bc]
xor ecx, 0xffffffff
sub ecx, 0x881299c3
xor ecx, 0xef11de53
cmp eax, ecx
jne 0x42cff3
jmp 0x42cff3
jmp 0x42cff8
jmp 0x42cffd
jmp 0x42d06c
mov ax, word [0x48dc60]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x48dc60], dx
movsx ecx, ax
add ecx, 0x55a5f4e
mov dword [0x495324], ecx
mov ecx, dword [esp + 0x78]
mov esi, dword [esp + 0x58]
movzx esi, byte [esp + esi + 0x51]
mov edi, dword [esp + 0x40]
movsx esi, byte [edi + esi]
mov edi, esp
mov dword [edi], esi
call fcn.00410930
sub esp, 4
mov ecx, dword [0x49799c]
dec ecx
mov dword [0x49799c], ecx
or ecx, 0x9039b7a6
mov esi, dword [0x49297c]
imul esi, ecx
mov dword [0x49297c], esi
mov dword [esp + 0x14], eax
mov ax, word [0x48f964]
mov cx, ax
add ecx, 0xa6fed6c7
mov ax, cx
mov word [0x48f964], ax
mov ecx, dword [esp + 0x58]
inc ecx
mov dword [esp + 0x58], ecx
mov ecx, dword [0x496ad8]
shr ecx, 7
and ecx, 0x8a96
mov ax, word [0x490b30]
mov dx, ax
xor ecx, edx
xor ecx, 0x8b8d
mov ax, cx
mov word [0x490b30], ax
jmp 0x42cd99
jmp 0x42d0c0
cmp dword [esp + 0x5c], 3
jge 0x42d20d
mov eax, 0xe7a7d97a
mov cx, word [0x48f942]
movsx edx, cx
and edx, 0x80220348
cmp eax, edx
jg 0x42d0f7
mov eax, dword [0x493abc]
and eax, 0xac941c7
mov dword [0x493abc], eax
mov eax, dword [esp + 0x5c]
inc eax
mov dword [esp + 0x5c], eax
mov eax, dword [0x4977f0]
and eax, 0x77ff7ef6
mov dword [0x4977f0], eax
test byte [esp + 0x77], 1
je 0x42d16e
mov eax, dword [0x4913f4]
inc eax
mov dword [0x4913f4], eax
mov ecx, dword [0x492274]
inc ecx
and eax, ecx
mov dword [0x492274], ecx
and eax, 0x3c58d5c8
mov ecx, dword [0x493414]
or ecx, eax
mov dword [0x493414], ecx
mov ecx, dword [esp + 0x78]
mov eax, esp
lea edx, [esp + 0x45]
mov dword [eax], edx
call fcn.004413d0
sub esp, 4
mov dword [0x4921c0], 0x80a00860
mov dword [esp + 0x10], eax
jmp 0x42d1f9
mov ax, word [0x48f972]
mov cx, ax
and ecx, 0xe46
mov ax, cx
mov word [0x48f972], ax
mov ecx, dword [esp + 0x78]
mov edx, esp
mov dword [edx], 0x3d
call fcn.00410930
sub esp, 4
mov ecx, dword [0x4936cc]
add ecx, 0x50b21ccf
mov si, word [0x48f5d0]
movsx edx, si
imul edx, edx, 0xc5b6789c
cmp ecx, edx
mov dword [esp + 0xc], eax
je 0x42d1f4
mov ax, word [0x48f59a]
movsx ecx, ax
shl ecx, 8
and ecx, 0xd915b989
cmp ecx, 0x51bbbf9e
jle 0x42d1ef
mov eax, dword [0x494978]
xor eax, 0x23a173f6
mov dword [0x494978], eax
jmp 0x42d1f4
jmp 0x42d1f9
mov eax, dword [0x49790c]
add eax, 0x24bc6739
mov dword [0x49790c], eax
jmp 0x42d0c0
mov eax, dword [0x493e90]
xor eax, 0x5a3dfac1
mov dword [0x493e90], eax
mov eax, 0xed765f00
mov ecx, dword [0x495068]
and ecx, 0xb746fe50
mov dword [0x495068], ecx
mov ecx, dword [esp + 0x40]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x41
mov dword [esp + 8], eax
call fcn.00428120
mov si, word [0x48e91c]
mov ax, si
dec eax
mov si, ax
mov word [0x48e91c], si
movsx eax, si
mov ecx, dword [esp + 8]
cmp ecx, eax
je 0x42d2c0
mov eax, 0xa61eaa17
mov ecx, dword [0x4940ac]
dec ecx
mov dword [0x4940ac], ecx
mov edx, dword [0x495c00]
mov esi, edx
dec esi
mov dword [0x495c00], esi
imul edx, edx, 0x214d2afb
add ecx, edx
cmp eax, ecx
jle 0x42d2bb
mov eax, dword [0x496e98]
sar eax, 9
and eax, 0x9ee87d3c
mov ecx, dword [0x495ab0]
or ecx, eax
mov dword [0x495ab0], ecx
jmp 0x42d2c0
mov eax, esp
lea ecx, [esp + 0x4d]
mov dword [eax], ecx
mov dword [eax + 4], 4
call fcn.00450890
mov eax, dword [0x49396c]
add eax, 0xa0a9111e
mov ecx, dword [0x493ca4]
sub ecx, eax
mov dword [0x493ca4], ecx
mov eax, esp
lea ecx, [esp + 0x49]
mov dword [eax], ecx
mov dword [eax + 4], 4
call fcn.00450890
mov eax, dword [0x496da4]
not eax
mov dx, word [0x48ed66]
mov cx, dx
lea eax, [eax + ecx + 0x506703f8]
mov dx, ax
mov word [0x48ed66], dx
mov eax, esp
lea ecx, [esp + 0x45]
mov dword [eax], ecx
mov dword [eax + 4], 4
call fcn.00450890
mov eax, dword [0x491cf4]
inc eax
mov dword [0x491cf4], eax
mov dx, word [0x4901f8]
mov cx, dx
or ecx, eax
mov dx, cx
mov word [0x4901f8], dx
add esp, 0x7c
pop esi
pop edi
pop ebx
ret