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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x90
mov eax, dword [esp + 0xb0]
mov cl, byte [esp + 0xac]
mov edx, dword [esp + 0xa8]
mov esi, dword [esp + 0xa4]
mov edi, 0x2f071bc0
mov dword [esp + 0x8c], eax
and cl, 1
mov byte [esp + 0x8b], cl
mov dword [esp + 0x84], edx
mov dword [esp + 0x80], esi
mov bx, word [0x498614]
mov ax, bx
xor eax, 0xd958
mov bx, ax
mov word [0x498614], bx
mov bx, word [0x4982e0]
mov ax, bx
inc eax
mov bp, ax
mov word [0x4982e0], bp
movsx eax, bx
imul eax, eax, 0xd61c5547
cmp edi, eax
jge 0x43f39d
mov eax, dword [0x492cf0]
add eax, 0x134c8dfa
mov dword [0x492cf0], eax
jmp 0x43f3be
mov eax, dword [0x492814]
mov ecx, eax
inc ecx
mov dword [0x492814], ecx
add eax, 0xe87bdc11
mov ecx, dword [0x490794]
or ecx, eax
mov dword [0x490794], ecx
mov eax, 0xa5a4a58f
mov ecx, dword [0x494ebc]
add ecx, 0xd02ee562
mov dx, word [0x49a0da]
mov si, dx
or ecx, esi
or ecx, 0x91f7
mov dx, cx
mov word [0x49a0da], dx
mov ecx, dword [0x4937dc]
imul ecx, ecx, 0x4a1c7f3e
mov dword [0x4937dc], ecx
mov dword [esp + 0x70], 0
mov ecx, dword [0x4963f4]
xor ecx, 0xa3f3c0dc
mov dword [0x4963f4], ecx
mov dword [esp + 0x6c], 0
mov dx, word [0x4990de]
movsx ecx, dx
mov esi, dword [0x4919ac]
and esi, ecx
mov dword [0x4919ac], esi
mov ecx, esp
mov dword [ecx + 4], 0x41
mov dword [ecx], 0x1cbc
mov dword [esp + 0x50], eax
call fcn.00448730
mov dword [esp + 0x54], eax
mov eax, dword [0x490774]
mov ecx, eax
dec ecx
mov dword [0x490774], ecx
mov ecx, dword [esp + 0x50]
cmp ecx, eax
jle 0x43f490
mov ax, word [0x49a458]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x49a458], dx
movsx ecx, ax
add ecx, 0xb5601740
mov dword [0x4964c8], ecx
mov eax, 0xdf595dd6
mov ecx, esp
mov dword [ecx + 4], 4
mov dword [ecx], 0x416b
mov dword [esp + 0x4c], eax
call fcn.00448730
mov dword [esp + 0x7c], eax
mov eax, dword [0x494eac]
mov ecx, dword [0x49601c]
or eax, ecx
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
jg 0x43f4f1
mov eax, 0x8ca091b4
mov ecx, dword [0x491810]
and ecx, 0x64ea0de4
cmp eax, ecx
jle 0x43f4ec
mov word [0x4999de], 0xbfe3
jmp 0x43f4f1
mov eax, 0x29cf812e
mov ecx, dword [esp + 0x7c]
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0x61]
mov dword [edx], ecx
mov dword [esp + 0x48], eax
call fcn.00455c70
mov si, word [0x498d76]
movsx ecx, si
sar ecx, 3
xor ecx, 0x5c610010
mov dword [0x4914a4], ecx
mov ecx, esp
mov dword [ecx + 4], 4
mov dword [ecx], 0x304a
mov dword [esp + 0x44], eax
call fcn.00448730
mov dword [esp + 0x78], eax
mov eax, dword [0x491a38]
dec eax
mov dword [0x491a38], eax
mov ecx, dword [esp + 0x48]
cmp ecx, eax
jne 0x43f57f
mov eax, dword [0x4931b0]
add eax, 0x583a0e6f
and eax, 0x5753
mov cx, word [0x4984b6]
mov dx, cx
xor edx, eax
mov cx, dx
mov word [0x4984b6], cx
mov eax, 0x13d78402
mov ecx, dword [esp + 0x7c]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 4
mov dword [esp + 0x40], eax
call fcn.0040a610
mov eax, dword [0x495580]
imul eax, eax, 0x81065200
or eax, 0x4a23
mov si, word [0x497906]
mov cx, si
sub ecx, eax
mov si, cx
mov word [0x497906], si
mov eax, dword [esp + 0x78]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x5d]
mov dword [ecx], eax
call fcn.00455c70
mov ecx, dword [0x494934]
mov edx, dword [0x4973fc]
imul ecx, edx
mov si, word [0x49ab16]
mov dx, si
or edx, ecx
mov si, dx
mov word [0x49ab16], si
mov ecx, esp
mov dword [ecx + 4], 4
mov dword [ecx], 0xb67
mov dword [esp + 0x3c], eax
call fcn.00448730
mov dword [esp + 0x74], eax
mov eax, dword [0x49580c]
mov ecx, eax
inc ecx
mov dword [0x49580c], ecx
xor eax, 0x4e84a6fa
mov ecx, dword [0x49309c]
and ecx, eax
mov dword [0x49309c], ecx
mov eax, dword [esp + 0x78]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 4
call fcn.0040a610
mov eax, dword [0x4901f8]
dec eax
mov dword [0x4901f8], eax
xor eax, 0xc43fb740
mov ecx, dword [esp + 0x40]
cmp ecx, eax
jge 0x43f6b5
mov eax, 0x56aa677b
mov ecx, dword [0x490918]
inc ecx
mov dword [0x490918], ecx
xor ecx, 0x9a56e6cc
cmp eax, ecx
jg 0x43f6b0
mov ax, word [0x499df6]
movsx ecx, ax
shl ecx, 0xa
xor ecx, 0x7eecfc55
cmp ecx, 0xfeddfd97
je 0x43f6ab
jmp 0x43f6ab
jmp 0x43f6b0
jmp 0x43f6b5
mov eax, dword [esp + 0x74]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x59]
mov dword [ecx], eax
call fcn.00455c70
mov dx, word [0x49971c]
movsx ecx, dx
mov esi, dword [0x4916b0]
sub esi, ecx
mov dword [0x4916b0], esi
mov ecx, dword [esp + 0x74]
mov esi, esp
mov dword [esi + 4], ecx
mov dword [esi], 4
mov dword [esp + 0x38], eax
call fcn.0040a610
mov eax, dword [0x4924e0]
add eax, 0x2a16f95b
mov dword [0x4924e0], eax
cmp dword [esp + 0x84], 0
je 0x43fd0d
mov eax, 0x49174c8
mov ecx, dword [0x4911f8]
mov edx, ecx
inc edx
mov dword [0x4911f8], edx
xor ecx, 0xb8caf311
cmp eax, ecx
je 0x43f7bd
mov eax, 0xf0cb8009
mov cx, word [0x4978e4]
mov dx, cx
dec edx
mov si, dx
mov word [0x4978e4], si
movsx edx, cx
sub edx, 0x974ea38c
cmp eax, edx
je 0x43f789
mov eax, dword [0x490c28]
mov ecx, eax
inc ecx
mov dword [0x490c28], ecx
and eax, 0x8b0b5c2b
mov ecx, dword [0x495368]
or ecx, eax
mov dword [0x495368], ecx
jmp 0x43f7b8
mov eax, 0x4e1f9502
mov cx, word [0x497b6c]
mov dx, cx
inc edx
mov cx, dx
mov word [0x497b6c], cx
movsx edx, cx
cmp eax, edx
jle 0x43f7b3
jmp 0x43f7b3
jmp 0x43f7b8
jmp 0x43f7cc
mov eax, dword [0x4972c4]
add eax, 0x2c4a2156
mov dword [0x4972c4], eax
mov eax, 0xf87e2a58
mov ecx, dword [esp + 0x84]
dec ecx
mov dword [esp + 0x84], ecx
mov ecx, dword [0x493214]
not ecx
mov edx, dword [0x495108]
xor edx, 0xffffffff
xor edx, 0xa5372cbe
or ecx, edx
cmp eax, ecx
je 0x43f860
mov eax, 0xfa9feffb
mov cx, word [0x49834c]
movsx edx, cx
shl edx, 5
sub edx, 0x55481965
or edx, 0x84944936
cmp eax, edx
jle 0x43f85b
mov eax, dword [0x492060]
mov ecx, eax
dec ecx
mov dword [0x492060], ecx
and eax, 0x20a04802
mov ecx, dword [0x4973a8]
sar ecx, 0xa
xor ecx, 0x4349ce98
cmp eax, ecx
jg 0x43f856
jmp 0x43f856
jmp 0x43f85b
jmp 0x43f860
mov eax, 0x808120a
mov ecx, dword [esp + 0x80]
mov dl, byte [ecx]
mov ecx, dword [esp + 0x70]
mov byte [esp + ecx + 0x69], dl
mov si, word [0x49b352]
mov cx, si
add ecx, 0x53ef09cc
mov si, cx
mov word [0x49b352], si
mov ecx, dword [esp + 0x70]
inc ecx
mov dword [esp + 0x70], ecx
mov ecx, dword [0x49624c]
shl ecx, 8
cmp eax, ecx
jle 0x43f8d6
mov ax, word [0x498376]
mov cx, ax
add ecx, ecx
mov edx, 0x74c443e2
sub edx, ecx
mov ax, word [0x4978a2]
mov cx, ax
and edx, ecx
and edx, 0x718c
mov ax, dx
mov word [0x4978a2], ax
mov eax, 0x4de71914
mov ecx, dword [esp + 0x80]
inc ecx
mov dword [esp + 0x80], ecx
mov ecx, dword [0x4933fc]
sar ecx, 8
cmp eax, ecx
jle 0x43f910
mov eax, dword [0x493894]
imul eax, eax, 0xff553dcc
mov dword [0x493894], eax
jmp 0x43f92f
mov eax, dword [0x493ce4]
inc eax
mov dword [0x493ce4], eax
and eax, 0xa4295197
mov ecx, dword [0x495c94]
imul ecx, eax
mov dword [0x495c94], ecx
cmp dword [esp + 0x70], 3
jne 0x43fcce
mov eax, dword [0x496ba0]
xor eax, 0xb2154af0
mov ecx, dword [0x494de0]
add ecx, eax
mov dword [0x494de0], ecx
movzx eax, byte [esp + 0x69]
shr eax, 2
mov dl, al
mov byte [esp + 0x65], dl
mov eax, dword [0x495440]
xor eax, 0x1454cf59
mov dword [0x495440], eax
movzx eax, byte [esp + 0x69]
and eax, 3
shl eax, 4
mov dl, al
mov byte [esp + 0x66], dl
mov si, word [0x4982d4]
mov ax, si
or eax, 0xb0f3
mov si, ax
mov word [0x4982d4], si
movzx eax, byte [esp + 0x6a]
shr eax, 4
movzx ecx, byte [esp + 0x66]
add ecx, eax
mov dl, cl
mov byte [esp + 0x66], dl
mov eax, dword [0x4938b8]
imul eax, eax, 0xac2683a0
mov dword [0x4938b8], eax
movzx eax, byte [esp + 0x6a]
and eax, 0xf
shl eax, 2
mov dl, al
mov byte [esp + 0x67], dl
mov si, word [0x499dea]
mov ax, si
and eax, 0x8158
mov si, ax
mov word [0x499dea], si
movzx eax, byte [esp + 0x6b]
shr eax, 6
movzx ecx, byte [esp + 0x67]
add ecx, eax
mov dl, cl
mov byte [esp + 0x67], dl
mov si, word [0x49a0de]
movsx eax, si
shl eax, 2
mov ecx, dword [0x492230]
xor ecx, eax
mov dword [0x492230], ecx
movzx eax, byte [esp + 0x6b]
and eax, 0x3f
mov dl, al
mov byte [esp + 0x68], dl
mov dword [0x496edc], 0x1ecdec66
mov dword [esp + 0x70], 0
mov eax, dword [0x496a44]
not eax
imul eax, eax, 0x4aecdef6
mov ecx, dword [0x493770]
or ecx, eax
mov dword [0x493770], ecx
cmp dword [esp + 0x70], 4
je 0x43fc6e
mov eax, dword [0x495a48]
xor eax, 0x5c73612a
mov dword [0x495a48], eax
test byte [esp + 0x8b], 1
je 0x43fbb5
mov eax, dword [esp + 0x70]
movzx eax, byte [esp + eax + 0x65]
cmp eax, 0x3d
jle 0x43fbb5
mov eax, dword [0x49012c]
not eax
mov dword [0x491030], eax
mov eax, dword [esp + 0x70]
movzx eax, byte [esp + eax + 0x65]
cmp eax, 0x3e
jne 0x43fb14
mov eax, 0x624ce690
mov ecx, dword [0x492920]
and ecx, 0xa011b098
mov dword [0x492920], ecx
mov ecx, dword [esp + 0x8c]
mov edx, esp
lea esi, [esp + 0x61]
mov dword [edx], esi
mov dword [esp + 0x34], eax
call fcn.0043e5d0
sub esp, 4
mov ecx, dword [0x4956d0]
dec ecx
mov dword [0x4956d0], ecx
or ecx, 0xbe960ef5
mov edx, dword [esp + 0x34]
cmp edx, ecx
mov dword [esp + 0x30], eax
je 0x43fb0f
mov eax, dword [0x496e6c]
add eax, 0xfda284b7
mov dword [0x496e6c], eax
jmp 0x43fba1
mov eax, 0x1c96e7a1
mov ecx, dword [0x49321c]
mov edx, ecx
dec edx
mov dword [0x49321c], edx
add ecx, 0x7da9b2c
mov edx, dword [0x495740]
sub edx, ecx
mov dword [0x495740], edx
mov ecx, dword [esp + 0x8c]
mov edx, esp
lea esi, [esp + 0x5d]
mov dword [edx], esi
mov dword [esp + 0x2c], eax
call fcn.0043e5d0
sub esp, 4
mov di, word [0x498dda]
movsx ecx, di
mov edx, dword [0x490e54]
sar edx, 9
add ecx, edx
add ecx, 0x655d677
mov edx, dword [esp + 0x2c]
cmp edx, ecx
mov dword [esp + 0x28], eax
je 0x43fb9c
mov eax, dword [0x494cfc]
not eax
imul eax, eax, 0xc15df361
mov ecx, 0xc735ae9b
sub ecx, eax
mov dword [0x49007c], ecx
jmp 0x43fba1
mov eax, dword [0x496e68]
or eax, 0xa748ede8
mov dword [0x496e68], eax
jmp 0x43fc1f
mov eax, dword [0x4956bc]
add eax, 0xb08f8c2e
mov dword [0x4956bc], eax
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x70]
movzx eax, byte [esp + eax + 0x65]
mov edx, dword [esp + 0x54]
movsx eax, byte [edx + eax]
mov edx, esp
mov dword [edx], eax
call fcn.00441ce0
sub esp, 4
mov ecx, dword [0x490310]
mov si, word [0x499cb0]
mov dx, si
dec edx
mov si, dx
mov word [0x499cb0], si
movsx edx, si
sub ecx, edx
mov edx, dword [0x492c80]
lea ecx, [edx + ecx - 0x5c00ddb8]
mov dword [0x492c80], ecx
mov dword [esp + 0x24], eax
mov dword [0x496f28], 0xe828a2d6
mov eax, dword [esp + 0x70]
inc eax
mov dword [esp + 0x70], eax
mov eax, dword [0x490d54]
mov ecx, eax
inc ecx
mov dword [0x490d54], ecx
mov dx, word [0x49a3c0]
mov cx, dx
inc ecx
mov si, cx
mov word [0x49a3c0], si
movsx ecx, dx
add eax, ecx
mov ecx, dword [0x495364]
imul ecx, eax
mov dword [0x495364], ecx
jmp 0x43fa53
mov eax, 0x65fa9dcf
mov ecx, dword [0x497744]
mov dx, cx
mov word [0x49878a], dx
mov dword [esp + 0x70], 0
mov ecx, dword [0x492888]
shl ecx, 4
mov esi, dword [0x493e54]
dec esi
mov dword [0x493e54], esi
add ecx, esi
and ecx, 0x28de310e
cmp eax, ecx
jne 0x43fcc9
mov ax, word [0x49b08a]
mov cx, ax
imul ecx, ecx, 0x1540b1b5
mov ax, cx
mov word [0x49b08a], ax
jmp 0x43fcce
mov eax, 0x97f76a73
mov ecx, dword [0x493198]
shl ecx, 7
or ecx, 0x987a394f
cmp eax, ecx
jne 0x43fd08
mov eax, dword [0x4907c0]
inc eax
mov dword [0x4907c0], eax
and eax, 0x65937d88
mov ecx, dword [0x4948d4]
or ecx, eax
mov dword [0x4948d4], ecx
jmp 0x43f708
mov dword [0x49750c], 0x808092e1
cmp dword [esp + 0x70], 0
je 0x440362
mov eax, dword [0x4952f8]
and eax, 0x9c26ee00
mov dword [0x4952f8], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x6c], eax
mov eax, dword [0x494bf4]
xor eax, 0xe8525d6c
mov dword [0x494bf4], eax
cmp dword [esp + 0x6c], 3
jge 0x43fdb6
mov eax, 0xda7a8d36
mov ecx, dword [0x494824]
add ecx, 0x961418d3
mov dword [0x494824], ecx
mov ecx, dword [esp + 0x6c]
mov byte [esp + ecx + 0x69], 0
mov dword [0x494568], 0x3ba03efc
mov ecx, dword [esp + 0x6c]
inc ecx
mov dword [esp + 0x6c], ecx
mov dx, word [0x49b08a]
movsx ecx, dx
shl ecx, 3
imul ecx, ecx, 0xd5566ef
cmp eax, ecx
jg 0x43fdb1
mov eax, dword [0x490a70]
imul eax, eax, 0xb188b5c0
mov dword [0x490a70], eax
jmp 0x43fd48
mov eax, 0xe5cf6895
mov ecx, dword [0x495d1c]
mov edx, ecx
dec edx
mov dword [0x495d1c], edx
add ecx, 0x5ac8ab0a
xor ecx, 0x76cbbda7
mov dword [0x4959b0], ecx
movzx ecx, byte [esp + 0x69]
shr ecx, 2
mov bl, cl
mov byte [esp + 0x65], bl
mov ecx, dword [0x495d80]
and ecx, 0xa32a5bfc
mov dword [0x495d80], ecx
movzx ecx, byte [esp + 0x69]
and ecx, 3
shl ecx, 4
mov bl, cl
mov byte [esp + 0x66], bl
mov si, word [0x49ab64]
movsx ecx, si
imul ecx, ecx, 0x3958315d
cmp eax, ecx
jg 0x43fe6b
mov eax, 0xde8efe3d
mov cx, word [0x49afe8]
mov dx, cx
inc edx
mov cx, dx
mov word [0x49afe8], cx
movsx edx, cx
add edx, 0x4e86a246
mov cx, word [0x49969e]
movsx esi, cx
sub edx, esi
cmp eax, edx
jl 0x43fe66
mov dword [0x496ec0], 0x1213bb05
jmp 0x43fe6b
mov eax, 0x71702546
movzx ecx, byte [esp + 0x6a]
shr ecx, 4
movzx edx, byte [esp + 0x66]
add edx, ecx
mov bl, dl
mov byte [esp + 0x66], bl
mov ecx, dword [0x496b20]
or ecx, 0x429fdbeb
mov dword [0x496b20], ecx
movzx ecx, byte [esp + 0x6a]
and ecx, 0xf
shl ecx, 2
mov bl, cl
mov byte [esp + 0x67], bl
mov ecx, dword [0x4904fc]
imul ecx, ecx, 0xe9d240f3
mov dword [0x4904fc], ecx
movzx ecx, byte [esp + 0x6b]
shr ecx, 6
movzx edx, byte [esp + 0x67]
add edx, ecx
mov bl, dl
mov byte [esp + 0x67], bl
mov ecx, dword [0x4970f0]
sar ecx, 7
xor ecx, 0x4e615dbe
or ecx, 0x38266ee
cmp eax, ecx
jl 0x43fefb
mov eax, dword [0x4912c8]
add eax, 0x55132ce
mov dword [0x4912c8], eax
movzx eax, byte [esp + 0x6b]
and eax, 0x3f
mov cl, al
mov byte [esp + 0x68], cl
mov dx, word [0x49911e]
movsx eax, dx
add eax, 0x9f432434
and eax, 0xfdbb0e8c
mov esi, dword [0x494f8c]
sar esi, 7
or esi, 0x7e5ff253
cmp eax, esi
jle 0x43ff51
mov ax, word [0x49a730]
mov cx, ax
and ecx, 0x866b
mov ax, cx
mov word [0x49a730], ax
jmp 0x43ffb9
mov eax, 0x609747ac
mov ecx, dword [0x490bb8]
and ecx, 0x3957db7
xor ecx, 0xcf10adc
cmp eax, ecx
jg 0x43ff84
mov eax, dword [0x495bb0]
add eax, 0xd7262b8
mov dword [0x495bb0], eax
jmp 0x43ffb4
mov eax, dword [0x4925a0]
mov ecx, eax
dec ecx
mov dword [0x4925a0], ecx
mov ecx, dword [0x495f6c]
or eax, ecx
inc ecx
mov dword [0x495f6c], ecx
or eax, 0x4b6dab5f
mov ecx, dword [0x4907e0]
add ecx, eax
mov dword [0x4907e0], ecx
jmp 0x43ffb9
mov dword [esp + 0x6c], 0
mov ax, word [0x49b17c]
movsx ecx, ax
mov ax, word [0x499582]
movsx edx, ax
add edx, 0xd61f2269
or ecx, edx
mov dword [0x49739c], ecx
mov eax, dword [0x494a4c]
imul eax, eax, 0x2048e046
mov dword [0x494a4c], eax
mov eax, dword [esp + 0x6c]
cmp eax, dword [esp + 0x70]
jle 0x440022
mov eax, dword [0x4940bc]
sar eax, 6
mov ecx, dword [0x490c64]
sub eax, ecx
mov ecx, dword [0x490800]
or ecx, eax
mov dword [0x490800], ecx
jmp 0x4401f9
mov eax, dword [0x496644]
imul eax, eax, 0xbfefdfff
mov dword [0x496644], eax
test byte [esp + 0x8b], 1
je 0x440162
mov eax, dword [esp + 0x6c]
movzx eax, byte [esp + eax + 0x65]
cmp eax, 0x3d
jle 0x440162
mov eax, dword [0x492ac8]
or eax, 0x24eb8bf9
mov dword [0x492ac8], eax
mov eax, dword [esp + 0x6c]
movzx eax, byte [esp + eax + 0x65]
cmp eax, 0x3e
jne 0x4400fb
mov eax, 0x78a776d6
mov ecx, dword [0x4933c8]
mov edx, ecx
inc edx
mov dword [0x4933c8], edx
add ecx, 0x8d2b7c6f
mov edx, dword [0x496154]
imul edx, ecx
mov dword [0x496154], edx
mov ecx, dword [esp + 0x8c]
mov edx, esp
lea esi, [esp + 0x61]
mov dword [edx], esi
mov dword [esp + 0x20], eax
call fcn.0043e5d0
sub esp, 4
mov ecx, dword [0x4916f8]
mov edx, dword [0x493068]
inc edx
mov dword [0x493068], edx
or ecx, edx
mov edx, dword [esp + 0x20]
cmp edx, ecx
mov dword [esp + 0x1c], eax
jg 0x4400f6
mov eax, dword [0x49664c]
not eax
or eax, 0x39bbdf0f
mov ecx, dword [0x496200]
sub ecx, eax
mov dword [0x496200], ecx
jmp 0x440148
mov eax, dword [0x495bac]
and eax, 0x479b57f1
mov ecx, dword [0x491b5c]
or ecx, eax
mov dword [0x491b5c], ecx
mov ecx, dword [esp + 0x8c]
mov eax, esp
lea edx, [esp + 0x5d]
mov dword [eax], edx
call fcn.0043e5d0
sub esp, 4
mov si, word [0x49a77a]
mov cx, si
or ecx, 0xd4
mov si, cx
mov word [0x49a77a], si
mov dword [esp + 0x18], eax
mov ax, word [0x4990d0]
movsx ecx, ax
and ecx, 0x41082d12
mov dword [0x49195c], ecx
jmp 0x4401bc
mov eax, 0xf7fe5c8a
mov ecx, dword [0x495b64]
or ecx, 0xefa953a4
cmp eax, ecx
je 0x44018a
mov eax, dword [0x496958]
add eax, 0x4e7ee8f2
mov dword [0x496958], eax
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x6c]
movzx eax, byte [esp + eax + 0x65]
mov edx, dword [esp + 0x54]
movsx eax, byte [edx + eax]
mov edx, esp
mov dword [edx], eax
call fcn.00441ce0
sub esp, 4
mov dword [0x4968f8], 0x17abf5a2
mov dword [esp + 0x14], eax
mov eax, dword [0x494b60]
mov ecx, eax
inc ecx
mov dword [0x494b60], ecx
mov ecx, dword [0x492ea4]
and eax, ecx
and eax, 0xaf6d4f2d
mov dword [0x492ea4], eax
mov eax, dword [esp + 0x6c]
inc eax
mov dword [esp + 0x6c], eax
mov eax, dword [0x494f24]
add eax, 0xa4c82108
mov dword [0x494f24], eax
jmp 0x43ffe1
jmp 0x4401fe
cmp dword [esp + 0x70], 3
jge 0x440358
mov eax, 0xef7f8b5a
mov ecx, dword [0x491bac]
dec ecx
mov dword [0x491bac], ecx
cmp eax, ecx
jg 0x440261
mov eax, 0xfedc667e
mov ecx, dword [0x491fd4]
cmp eax, ecx
jg 0x44025c
mov eax, 0x440000
mov ecx, dword [0x495574]
mov edx, ecx
dec edx
mov dword [0x495574], edx
cmp eax, ecx
jge 0x440257
jmp 0x440257
jmp 0x44025c
jmp 0x440261
mov eax, dword [esp + 0x70]
inc eax
mov dword [esp + 0x70], eax
mov cx, word [0x498398]
mov ax, cx
inc eax
mov cx, ax
mov word [0x498398], cx
xor eax, 0xb061
mov cx, word [0x49883c]
mov dx, cx
or edx, eax
mov cx, dx
mov word [0x49883c], cx
test byte [esp + 0x8b], 1
je 0x4402e1
mov eax, dword [0x49286c]
xor eax, 0xa793bcce
mov dword [0x49286c], eax
mov ecx, dword [esp + 0x8c]
mov eax, esp
lea edx, [esp + 0x59]
mov dword [eax], edx
call fcn.0043e5d0
sub esp, 4
mov dword [0x494ed8], 0x7bff7d87
mov dword [esp + 0x10], eax
jmp 0x440343
mov eax, dword [0x496100]
mov cx, word [0x49a412]
mov dx, cx
mov esi, edx
dec esi
mov cx, si
mov word [0x49a412], cx
imul eax, edx
mov cx, word [0x497f22]
mov dx, cx
xor eax, edx
mov cx, ax
mov word [0x49953a], cx
mov ecx, dword [esp + 0x8c]
mov eax, esp
mov dword [eax], 0x3d
call fcn.00441ce0
sub esp, 4
mov ecx, dword [0x4929c8]
or ecx, 0x9fe99fbf
mov dword [0x4929c8], ecx
mov dword [esp + 0xc], eax
mov eax, dword [0x4953dc]
imul eax, eax, 0xcf6fe9ef
mov dword [0x4953dc], eax
jmp 0x4401fe
mov dword [0x4940d4], 0xdedf6ff3
mov eax, 0x90489160
mov ecx, dword [0x496cfc]
dec ecx
mov dword [0x496cfc], ecx
mov edx, dword [0x4907c4]
imul ecx, edx
add ecx, 0x65dc7c7d
mov edx, dword [0x496f8c]
or edx, ecx
mov dword [0x496f8c], edx
mov ecx, dword [esp + 0x54]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x41
mov dword [esp + 8], eax
call fcn.0040a610
mov eax, dword [0x4964b0]
mov ecx, eax
dec ecx
mov dword [0x4964b0], ecx
mov ecx, dword [esp + 8]
cmp ecx, eax
jg 0x4403f8
mov eax, dword [0x49774c]
and eax, 0x994e0331
mov ecx, dword [0x49096c]
shl ecx, 1
or ecx, 0x653ee908
cmp eax, ecx
je 0x4403f3
mov eax, dword [0x493270]
and eax, 0x5252bcb4
mov dword [0x493270], eax
jmp 0x4403f8
mov eax, esp
lea ecx, [esp + 0x61]
mov dword [eax], ecx
mov dword [eax + 4], 4
call fcn.0042f280
mov eax, dword [0x4927cc]
add eax, 0xb80b40a7
and eax, 0x5c5e049d
mov ecx, dword [0x494944]
xor ecx, eax
mov dword [0x494944], ecx
mov eax, esp
lea ecx, [esp + 0x5d]
mov dword [eax], ecx
mov dword [eax + 4], 4
call fcn.0042f280
mov eax, dword [0x494090]
xor eax, 0x1f303c7d
mov dword [0x494090], eax
mov eax, esp
lea ecx, [esp + 0x59]
mov dword [eax], ecx
mov dword [eax + 4], 4
call fcn.0042f280
mov eax, dword [0x495940]
shl eax, 0xa
mov dx, word [0x497ea8]
movsx ecx, dx
and ecx, 0x431ffb4f
or eax, ecx
cmp eax, 0x4498303a
je 0x4404a3
mov eax, dword [0x495204]
inc eax
mov dword [0x495204], eax
mov ecx, dword [0x490b50]
and ecx, eax
mov dword [0x490b50], ecx
jmp 0x4404bc
mov eax, dword [0x491488]
sar eax, 5
mov cx, word [0x49829a]
movsx edx, cx
or eax, edx
mov dword [0x4925ec], eax
add esp, 0x90
pop esi
pop edi
pop ebx
pop ebp
ret