Function at 0x442680
Capabilities:
Authenticate hmac

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push eax
mov ecx, dword [ebp + 0x14]
mov eax, dword [0x482860]
test eax, eax
jne 0x44423b
movzx eax, byte [0x473c30]
xor al, 0x9b
mov byte [0x473d00], al
movzx eax, byte [0x473c31]
mov edx, ecx
mov ecx, eax
add cl, al
and cl, 0xb4
sub al, cl
add al, 0xda
mov byte [0x473d01], al
movups xmm0, xmmword [0x473c32]
xorps xmm0, xmmword [0x45f840]
movups xmmword [0x473d02], xmm0
mov eax, 0x9847e082
xor eax, dword [0x473c42]
mov dword [0x473d12], eax
movzx eax, byte [0x473c46]
xor al, 0xd8
mov byte [0x473d16], al
movzx eax, byte [0x473c47]
xor al, 0xd1
mov byte [0x473d17], al
movzx eax, byte [0x473c48]
xor al, 0xa0
mov byte [0x473d18], al
movzx eax, byte [0x473c49]
mov ecx, eax
add cl, al
and cl, 0x58
sub al, cl
add al, 0x2c
mov byte [0x473d19], al
movzx eax, byte [0x473c4a]
xor al, 0xa7
mov byte [0x473d1a], al
movzx eax, byte [0x473c4b]
xor al, 0x2d
mov byte [0x473d1b], al
movzx eax, byte [0x473c4c]
mov byte [0x473d1c], al
movsd xmm0, qword [0x473c4d]
xorps xmm0, xmmword [0x45f850]
movlps qword [0x473d1d], xmm0
movzx eax, byte [0x473c55]
mov ecx, eax
add cl, al
and cl, 0x1e
sub al, cl
add al, 0x8f
mov byte [0x473d25], al
movzx eax, byte [0x473c56]
xor al, 0xb5
mov byte [0x473d26], al
movzx eax, byte [0x473c57]
xor al, 0x3a
mov byte [0x473d27], al
movzx eax, byte [0x473c58]
mov ecx, eax
add cl, al
and cl, 0xbc
sub al, cl
add al, 0x5e
mov byte [0x473d28], al
movzx eax, byte [0x473c59]
xor al, 0x2b
mov byte [0x473d29], al
movzx eax, byte [0x473c5a]
mov ecx, eax
not cl
or cl, 0xa4
or al, 0x5b
and al, cl
mov byte [0x473d2a], al
movzx eax, byte [0x473c5b]
mov ecx, eax
add cl, al
and cl, 0x6c
sub al, cl
add al, 0xb6
mov byte [0x473d2b], al
movzx eax, byte [0x473c5c]
mov ecx, eax
add cl, al
and cl, 0xf2
sub al, cl
add al, 0xf9
mov byte [str.LQ_n_r1], al
movzx eax, byte [0x473c5d]
xor al, 0xdc
mov byte [0x473d2d], al
movzx eax, byte [0x473c5e]
xor al, 0xb0
mov byte [0x473d2e], al
movzx eax, byte [0x473c5f]
mov ecx, eax
add cl, al
and cl, 0xa
sub al, cl
add al, 5
mov byte [0x473d2f], al
movaps xmm0, xmmword [0x473c60]
xorps xmm0, xmmword [0x45f860]
movss dword [0x473d30], xmm0
movzx eax, byte [0x473c64]
xor al, 0x84
mov byte [0x473d34], al
movzx eax, byte [0x473c65]
mov ecx, eax
add cl, al
and cl, 0x34
sub al, cl
add al, 0x9a
mov byte [0x473d35], al
movzx eax, byte [0x473c66]
xor al, 0xe8
mov byte [0x473d36], al
movzx eax, byte [0x473c67]
mov ecx, eax
not cl
or al, 0x48
or cl, 0xb7
and cl, al
not cl
mov eax, 0xdf65ffbc
xor eax, dword [0x473c68]
mov byte [0x473d37], cl
mov dword [0x473d38], eax
movzx eax, byte [0x473c6c]
movd xmm0, dword [0x473c6d]
movdqa xmm1, xmm0
paddb xmm1, xmm0
pand xmm1, xmmword [0x45f870]
xor al, 0xa7
psubb xmm0, xmm1
paddb xmm0, xmmword [0x45f880]
mov byte [0x473d3c], al
mov eax, 0x8680b7af
xor eax, dword [0x473c71]
movd dword [0x473d3d], xmm0
mov dword [0x473d41], eax
movzx eax, byte [0x473c75]
xor al, 0x63
mov byte [0x473d45], al
movzx eax, byte [0x473c76]
mov ecx, eax
add cl, al
and cl, 0xa4
sub al, cl
add al, 0x52
mov byte [0x473d46], al
movzx eax, byte [0x473c77]
mov ecx, eax
add cl, al
and cl, 0x4a
sub al, cl
add al, 0x25
mov byte [str.8d8], al
movzx eax, byte [0x473c78]
xor al, 0x4f
mov byte [0x473d48], al
movzx eax, byte [0x473c79]
xor al, 0xf6
mov byte [0x473d49], al
movzx eax, byte [0x473c7a]
xor al, 0xbd
mov byte [0x473d4a], al
movzx eax, byte [0x473c7b]
mov ecx, eax
add cl, al
and cl, 0x40
sub al, cl
add al, 0x20
mov byte [0x473d4b], al
movzx eax, byte [0x473c7c]
mov ecx, eax
add cl, al
and cl, 0xa2
sub al, cl
add al, 0x51
mov ecx, 0xf17096d1
xor ecx, dword [0x473c7d]
mov byte [0x473d4c], al
mov dword [0x473d4d], ecx
movzx eax, byte [0x473c81]
mov ecx, eax
add cl, al
and cl, 0xc2
sub al, cl
add al, 0x61
mov byte [0x473d51], al
movzx eax, byte [0x473c82]
xor al, 0xd3
mov byte [0x473d52], al
movzx eax, byte [0x473c83]
mov ecx, eax
add cl, al
and cl, 0x4e
sub al, cl
add al, 0xa7
mov byte [0x473d53], al
mov eax, 0x182a58c7
xor eax, dword [0x473c84]
mov dword [0x473d54], eax
movzx eax, byte [0x473c88]
mov ecx, eax
not cl
or cl, 0x48
or al, 0xb7
and al, cl
mov byte [0x473d58], al
movzx eax, byte [0x473c89]
xor al, 0x86
mov byte [0x473d59], al
movzx eax, byte [0x473c8a]
xor al, 0x1e
mov byte [0x473d5a], al
movzx eax, byte [0x473c8b]
mov ecx, eax
add cl, al
and cl, 0x44
sub al, cl
add al, 0x22
mov byte [0x473d5b], al
movzx eax, byte [0x473c8c]
mov ecx, eax
add cl, al
and cl, 0xd8
sub al, cl
add al, 0x6c
mov ecx, 0xfb6d719e
xor ecx, dword [0x473c8d]
mov byte [0x473d5c], al
mov dword [0x473d5d], ecx
movzx eax, byte [0x473c91]
xor al, 0xa0
mov byte [0x473d61], al
movzx eax, byte [0x473c92]
xor al, 0x9c
mov byte [0x473d62], al
movzx eax, byte [0x473c93]
xor al, 0xe2
mov byte [0x473d63], al
movzx eax, byte [0x473c94]
mov ecx, eax
add cl, al
and cl, 0x34
sub al, cl
add al, 0x1a
movsd xmm0, qword [0x473c95]
xorps xmm0, xmmword [0x45f890]
mov byte [0x473d64], al
movlps qword [0x473d65], xmm0
movzx eax, byte [0x473c9d]
xor al, 0xf9
mov byte [0x473d6d], al
movzx eax, byte [0x473c9e]
xor al, 0x76
mov byte [0x473d6e], al
movzx eax, byte [0x473c9f]
xor al, 0xf7
mov byte [0x473d6f], al
movzx eax, byte [0x473ca0]
mov ecx, eax
add cl, al
and cl, 0x4a
sub al, cl
add al, 0xa5
mov byte [0x473d70], al
movzx eax, byte [0x473ca1]
xor al, 0x69
mov byte [0x473d71], al
movzx eax, byte [0x473ca2]
mov ecx, eax
add cl, al
and cl, 0x6e
sub al, cl
add al, 0x37
mov byte [0x473d72], al
movzx eax, byte [0x473ca3]
xor al, 0x36
mov byte [0x473d73], al
movzx eax, byte [0x473ca4]
mov ecx, eax
not cl
or al, 0xc3
or cl, 0x3c
and cl, al
not cl
mov byte [0x473d74], cl
mov eax, 0x1dbc27e4
xor eax, dword [0x473ca5]
mov dword [0x473d75], eax
movzx eax, byte [0x473ca9]
mov ecx, eax
add cl, al
and cl, 0x8c
sub al, cl
add al, 0xc6
mov byte [0x473d79], al
movzx eax, byte [0x473caa]
xor al, 0x9d
mov byte [0x473d7a], al
movzx eax, byte [0x473cab]
mov ecx, eax
add cl, al
and cl, 0xb4
sub al, cl
add al, 0x5a
mov byte [0x473d7b], al
movzx eax, byte [0x473cac]
xor al, 0x81
mov byte [0x473d7c], al
movzx eax, byte [0x473cad]
mov byte [0x473d7d], al
movzx eax, byte [0x473cae]
xor al, 6
mov byte [0x473d7e], al
movzx eax, byte [0x473caf]
xor al, 0x8b
mov byte [0x473d7f], al
movzx eax, byte [0x473cb0]
xor al, 0xa2
mov byte [0x473d80], al
movzx eax, byte [0x473cb1]
mov ecx, eax
not cl
or cl, 0xb5
or al, 0x4a
and al, cl
mov byte [0x473d81], al
mov eax, 0x47d2320d
xor eax, dword [0x473cb2]
mov dword [0x473d82], eax
movzx eax, byte [0x473cb6]
xor al, 0xc0
mov byte [0x473d86], al
movzx eax, byte [0x473cb7]
mov ecx, eax
not cl
or cl, 0x14
or al, 0xeb
and al, cl
mov byte [0x473d87], al
movzx eax, byte [0x473cb8]
mov ecx, eax
not cl
or cl, 0x2d
or al, 0xd2
and al, cl
mov ecx, 0xa4acdcdd
xor ecx, dword [0x473cb9]
mov byte [0x473d88], al
mov dword [0x473d89], ecx
movzx eax, byte [0x473cbd]
mov byte [0x473d8d], al
movups xmm0, xmmword [0x473cbe]
xorps xmm0, xmmword [0x45f8a0]
movups xmmword [0x473d8e], xmm0
movzx eax, byte [0x473cce]
xor al, 0xd5
mov byte [0x473d9e], al
movzx eax, byte [0x473ccf]
mov ecx, eax
add cl, al
and cl, 0x5e
sub al, cl
add al, 0xaf
mov byte [0x473d9f], al
movzx eax, byte [0x473cd0]
xor al, 0x4c
mov byte [0x473da0], al
movzx eax, byte [0x473cd1]
mov ecx, eax
add cl, al
and cl, 0xa0
sub al, cl
add al, 0xd0
mov byte [0x473da1], al
movzx eax, byte [0x473cd2]
xor al, 0xbd
mov byte [0x473da2], al
movzx eax, byte [0x473cd3]
xor al, 0x2d
mov byte [0x473da3], al
movzx eax, byte [0x473cd4]
xor al, 0x38
mov byte [0x473da4], al
movzx eax, byte [0x473cd5]
mov ecx, eax
add cl, al
and cl, 0xca
sub al, cl
add al, 0xe5
mov byte [0x473da5], al
movzx eax, byte [0x473cd6]
mov ecx, eax
add cl, al
and cl, 0x8a
sub al, cl
add al, 0x45
mov byte [0x473da6], al
mov eax, 0xf601eb65
xor eax, dword [0x473cd7]
mov dword [0x473da7], eax
movzx eax, byte [0x473cdb]
xor al, 0x64
mov byte [0x473dab], al
movzx eax, byte [0x473cdc]
xor al, 0x8e
mov byte [0x473dac], al
movzx eax, byte [0x473cdd]
xor al, 0xd2
mov byte [0x473dad], al
movzx eax, byte [0x473cde]
mov ecx, eax
not cl
or al, 0xa2
or cl, 0x5d
and cl, al
not cl
mov byte [0x473dae], cl
mov eax, 0x1d114627
xor eax, dword [0x473cdf]
mov dword [0x473daf], eax
movzx eax, byte [0x473ce3]
xor al, 0x2b
mov byte [0x473db3], al
movzx eax, byte [0x473ce4]
xor al, 4
mov byte [str.s6], al
movzx eax, byte [0x473ce5]
xor al, 0xc6
mov byte [0x473db5], al
movzx eax, byte [0x473ce6]
mov ecx, eax
add cl, al
and cl, 0x60
sub al, cl
add al, 0xb0
mov byte [0x473db6], al
movzx eax, byte [0x473ce7]
xor al, 0x6a
mov byte [0x473db7], al
movzx eax, byte [0x473ce8]
xor al, 0xb0
mov byte [0x473db8], al
movzx eax, byte [0x473ce9]
mov ecx, eax
add cl, al
and cl, 0xaa
sub al, cl
add al, 0xd5
mov byte [0x473db9], al
mov eax, 0x806d30cc
xor eax, dword [0x473cea]
mov dword [0x473dba], eax
movzx eax, byte [0x473cee]
mov ecx, eax
add cl, al
and cl, 0xa
sub al, cl
add al, 0x85
mov byte [0x473dbe], al
movsd xmm0, qword [0x473cef]
xorps xmm0, xmmword [0x45f8b0]
movlps qword [0x473dbf], xmm0
movzx eax, byte [0x473cf7]
xor al, 0xb6
mov byte [0x473dc7], al
movzx eax, byte [0x473cf8]
xor al, 0x17
movaps xmm0, xmmword [0x473dd0]
xorps xmm0, xmmword [0x45f8c0]
mov byte [0x473dc8], al
movss dword [0x473fe0], xmm0
movzx eax, byte [0x473dd4]
mov ecx, eax
add cl, al
and cl, 0xc2
sub al, cl
add al, 0xe1
mov byte [0x473fe4], al
movzx eax, byte [0x473dd5]
mov ecx, eax
add cl, al
and cl, 0x7e
sub al, cl
add al, 0x3f
mov byte [0x473fe5], al
movzx eax, byte [0x473dd6]
mov ecx, eax
add cl, al
and cl, 0x76
sub al, cl
add al, 0x3b
mov byte [0x473fe6], al
mov eax, 0x801fc1fd
xor eax, dword [0x473dd7]
mov dword [0x473fe7], eax
movzx eax, byte [0x473ddb]
mov ecx, eax
add cl, al
and cl, 0x8e
sub al, cl
add al, 0x47
mov byte [0x473feb], al
movzx eax, byte [0x473ddc]
xor al, 0xa
mov byte [0x473fec], al
movzx eax, byte [0x473ddd]
xor al, 0x4c
mov byte [0x473fed], al
movzx eax, byte [0x473dde]
mov ecx, eax
add cl, al
not cl
add cl, al
mov byte [0x473fee], cl
movzx eax, byte [0x473ddf]
mov ecx, eax
add cl, al
and cl, 0xc6
sub al, cl
add al, 0xe3
mov byte [0x473fef], al
movaps xmm0, xmmword [0x473de0]
xorps xmm0, xmmword [0x45f8d0]
movss dword [0x473ff0], xmm0
movzx eax, byte [0x473de4]
xor al, 0x54
mov byte [0x473ff4], al
movzx eax, byte [0x473de5]
xor al, 0x99
mov byte [0x473ff5], al
movzx eax, byte [0x473de6]
xor al, 0x74
mov byte [0x473ff6], al
movzx eax, byte [0x473de7]
mov ecx, eax
add cl, al
and cl, 0xd2
sub al, cl
add al, 0xe9
mov byte [0x473ff7], al
movzx eax, byte [0x473de8]
mov ecx, eax
add cl, al
and cl, 0xe8
sub al, cl
add al, 0xf4
mov byte [0x473ff8], al
mov eax, 0x61f8985b
xor eax, dword [0x473de9]
mov dword [0x473ff9], eax
movzx eax, byte [0x473ded]
xor al, 0x9d
mov byte [0x473ffd], al
movzx eax, byte [0x473dee]
mov ecx, eax
add cl, al
and cl, 0x26
sub al, cl
add al, 0x13
mov byte [0x473ffe], al
movzx eax, byte [0x473def]
xor al, 0x83
mov byte [0x473fff], al
movzx eax, byte [0x473df0]
xor al, 0x5b
mov byte [0x474000], al
movzx eax, byte [0x473df1]
mov ecx, eax
add cl, al
and cl, 0xe
sub al, cl
add al, 0x87
mov byte [0x474001], al
mov eax, 0x43802771
xor eax, dword [0x473df2]
mov dword [0x474002], eax
movzx eax, byte [0x473df6]
xor al, 0xc9
mov byte [0x474006], al
movzx eax, byte [0x473df7]
mov ecx, eax
add cl, al
and cl, 0xc6
sub al, cl
add al, 0xe3
mov byte [0x474007], al
movzx eax, byte [0x473df8]
xor al, 0x9c
mov byte [0x474008], al
movzx eax, byte [0x473df9]
xor al, 0xdd
mov byte [0x474009], al
movzx eax, byte [0x473dfa]
xor al, 0x42
mov byte [0x47400a], al
movzx eax, byte [0x473dfb]
mov ecx, eax
not cl
or cl, 0xcc
or al, 0x33
and al, cl
mov byte [0x47400b], al
mov eax, 0xe729104d
xor eax, dword [0x473dfc]
mov dword [0x47400c], eax
movzx eax, byte [0x473e00]
xor al, 0x61
mov byte [0x474010], al
movzx eax, byte [0x473e01]
mov ecx, eax
add cl, al
and cl, 0xc6
sub al, cl
add al, 0x63
mov byte [0x474011], al
movzx eax, byte [0x473e02]
xor al, 0x33
mov byte [0x474012], al
movzx eax, byte [0x473e03]
mov ecx, eax
not cl
or al, 0x3f
or cl, 0xc0
and cl, al
not cl
mov byte [0x474013], cl
movzx eax, byte [0x473e04]
xor al, 0x5e
mov byte [0x474014], al
movzx eax, byte [0x473e05]
mov ecx, eax
add cl, al
and cl, 0x70
sub al, cl
add al, 0xb8
mov byte [0x474015], al
movsd xmm0, qword [0x473e06]
xorps xmm0, xmmword [0x45f8e0]
movlps qword [0x474016], xmm0
mov eax, 0xcd057208
xor eax, dword [0x473e0e]
mov dword [0x47401e], eax
movzx eax, byte [0x473e12]
xor al, 0x52
mov byte [0x474022], al
movzx eax, byte [0x473e13]
mov ecx, eax
not cl
or al, 0x5d
or cl, 0xa2
and cl, al
not cl
mov byte [0x474023], cl
mov eax, 0xe421cc5f
xor eax, dword [0x473e14]
mov dword [0x474024], eax
movzx eax, byte [0x473e18]
xor al, 0x88
mov byte [0x474028], al
movzx eax, byte [0x473e19]
xor al, 0x44
mov byte [0x474029], al
movzx eax, byte [0x473e1a]
xor al, 0xcc
mov byte [0x47402a], al
movzx eax, byte [0x473e1b]
mov ecx, eax
not cl
or cl, 0x70
or al, 0x8f
and al, cl
mov byte [0x47402b], al
mov eax, 0xe82ea748
xor eax, dword [0x473e1c]
mov dword [0x47402c], eax
movzx eax, byte [0x473e20]
xor al, 0x30
mov byte [0x474030], al
movzx eax, byte [0x473e21]
xor al, 0x18
mov byte [0x474031], al
movzx eax, byte [0x473e22]
xor al, 0x19
mov byte [0x474032], al
movzx eax, byte [0x473e23]
mov ecx, eax
add cl, al
and cl, 0x5c
sub al, cl
add al, 0x2e
mov byte [0x474033], al
movzx eax, byte [0x473e24]
mov ecx, eax
not cl
or al, 0x98
or cl, 0x67
and cl, al
not cl
mov byte [0x474034], cl
movsd xmm0, qword [0x473e25]
xorps xmm0, xmmword [0x45f8f0]
movlps qword [0x474035], xmm0
mov eax, 0x574420cd
xor eax, dword [0x473e2d]
mov dword [0x47403d], eax
movzx eax, byte [0x473e31]
mov ecx, eax
not cl
or cl, 0x84
or al, 0x7b
and al, cl
mov ecx, 0xa5ec5ada
xor ecx, dword [0x473e32]
mov byte [0x474041], al
mov dword [0x474042], ecx
movzx eax, byte [0x473e36]
xor al, 0x12
mov byte [0x474046], al
movzx eax, byte [0x473e37]
xor al, 0x7a
mov byte [0x474047], al
movzx eax, byte [0x473e38]
xor al, 0x58
mov byte [0x474048], al
movzx eax, byte [0x473e39]
mov ecx, eax
add cl, al
and cl, 0x28
sub al, cl
add al, 0x14
mov byte [0x474049], al
movzx eax, byte [0x473e3a]
mov ecx, eax
not cl
or al, 0x84
or cl, 0x7b
and cl, al
not cl
movsd xmm0, qword [0x473e3b]
xorps xmm0, xmmword [0x45f900]
mov byte [0x47404a], cl
movlps qword [0x47404b], xmm0
movzx eax, byte [0x473e43]
mov ecx, eax
add cl, al
and cl, 0xbe
sub al, cl
add al, 0xdf
mov byte [str.du7], al
mov eax, 0x3b09dcd0
xor eax, dword [0x473e44]
mov dword [0x474054], eax
movzx eax, byte [0x473e48]
mov ecx, eax
add cl, al
and cl, 0xe6
sub al, cl
add al, 0x73
mov byte [0x474058], al
mov eax, 0x9d6df8dd
xor eax, dword [0x473e49]
mov dword [0x474059], eax
movzx eax, byte [0x473e4d]
mov ecx, eax
add cl, al
and cl, 0x3c
sub al, cl
add al, 0x9e
mov byte [0x47405d], al
movzx eax, byte [0x473e4e]
xor al, 0xa5
mov byte [0x47405e], al
movzx eax, byte [0x473e4f]
xor al, 0x83
mov byte [0x47405f], al
movzx eax, byte [str._vf8_]
xor al, 0x3f
mov byte [0x474060], al
movzx eax, byte [0x473e51]
mov ecx, eax
add cl, al
and cl, 0xac
sub al, cl
add al, 0x56
mov byte [0x474061], al
movzx eax, byte [0x473e52]
xor al, 0xc
mov byte [0x474062], al
movzx eax, byte [0x473e53]
mov ecx, eax
add cl, al
and cl, 0xa2
sub al, cl
add al, 0x51
mov byte [0x474063], al
movzx eax, byte [0x473e54]
xor al, 0xd7
mov byte [0x474064], al
movzx eax, byte [0x473e55]
xor al, 0x5a
mov byte [0x474065], al
movzx eax, byte [0x473e56]
xor al, 0xd4
mov byte [0x474066], al
movd xmm0, dword [0x473e57]
movdqa xmm1, xmm0
paddb xmm1, xmm0
pand xmm1, xmmword [0x45f910]
psubb xmm0, xmm1
paddb xmm0, xmmword [0x45f920]
movd dword [str._Zc._], xmm0
movsd xmm0, qword [0x473e5b]
xorps xmm0, xmmword [0x45f930]
movlps qword [0x47406b], xmm0
movzx eax, byte [0x473e63]
mov ecx, eax
not cl
or cl, 7
or al, 0xf8
and al, cl
mov ecx, 0x6673e621
xor ecx, dword [0x473e64]
mov byte [0x474073], al
mov dword [0x474074], ecx
movzx eax, byte [0x473e68]
mov ecx, eax
add cl, al
and cl, 0x32
sub al, cl
add al, 0x19
mov byte [0x474078], al
movzx eax, byte [0x473e69]
xor al, 0xa3
mov byte [0x474079], al
movzx eax, byte [0x473e6a]
xor al, 0x83
mov byte [0x47407a], al
movzx eax, byte [0x473e6b]
xor al, 0x70
mov byte [0x47407b], al
movzx eax, byte [0x473e6c]
mov ecx, eax
add cl, al
and cl, 0xe4
sub al, cl
add al, 0xf2
mov byte [0x47407c], al
movzx eax, byte [0x473e6d]
xor al, 0xc7
mov byte [0x47407d], al
movzx eax, byte [0x473e6e]
xor al, 0x3c
mov byte [0x47407e], al
movzx eax, byte [0x473e6f]
mov ecx, eax
add cl, al
and cl, 0xa8
sub al, cl
add al, 0xd4
mov byte [0x47407f], al
movzx eax, byte [0x473e70]
mov ecx, eax
not cl
or cl, 0xed
or al, 0x12
and al, cl
mov byte [0x474080], al
movzx eax, byte [0x473e71]
mov ecx, eax
add cl, al
and cl, 0x3c
sub al, cl
add al, 0x9e
mov byte [str.4yzX], al
movzx eax, byte [0x473e72]
mov ecx, eax
not cl
or al, 0x86
or cl, 0x79
and cl, al
not cl
mov byte [0x474082], cl
mov eax, 0xe02853c8
xor eax, dword [0x473e73]
mov dword [0x474083], eax
movzx eax, byte [0x473e77]
xor al, 0x97
mov byte [str._Rd_O], al
movzx eax, byte [0x473e78]
xor al, 0xf3
mov byte [0x474088], al
movzx eax, byte [0x473e79]
mov ecx, eax
add cl, al
and cl, 0x70
sub al, cl
add al, 0x38
mov byte [0x474089], al
movzx eax, byte [0x473e7a]
mov ecx, eax
add cl, al
and cl, 0x90
sub al, cl
add al, 0x48
mov byte [0x47408a], al
movsd xmm0, qword [0x473e7b]
xorps xmm0, xmmword [0x45f940]
movlps qword [0x47408b], xmm0
movzx eax, byte [0x473e83]
xor al, 0x79
mov byte [0x474093], al
movzx eax, byte [0x473e84]
xor al, 0xc7
mov byte [0x474094], al
movzx eax, byte [0x473e85]
mov ecx, eax
not cl
or al, 0xf8
or cl, 7
and cl, al
not cl
mov byte [0x474095], cl
movzx eax, byte [0x473e86]
xor al, 0xf8
mov byte [0x474096], al
movzx eax, byte [0x473e87]
xor al, 0xeb
mov byte [0x474097], al
movzx eax, byte [0x473e88]
xor al, 0xbb
mov byte [0x474098], al
movzx eax, byte [0x473e89]
mov ecx, eax
add cl, al
and cl, 0xc
sub al, cl
add al, 0x86
mov byte [0x474099], al
movzx eax, byte [0x473e8a]
mov ecx, eax
not cl
or al, 0xeb
or cl, 0x14
and cl, al
not cl
mov byte [0x47409a], cl
movzx eax, byte [0x473e8b]
xor al, 0x81
mov byte [0x47409b], al
movzx eax, byte [0x473e8c]
xor al, 0x81
mov byte [0x47409c], al
movzx eax, byte [0x473e8d]
mov ecx, eax
add cl, al
and cl, 0x48
sub al, cl
add al, 0x24
mov byte [0x47409d], al
movzx eax, byte [0x473e8e]
xor al, 0xb2
mov byte [0x47409e], al
movzx eax, byte [0x473e8f]
mov ecx, eax
add cl, al
and cl, 0x78
sub al, cl
add al, 0x3c
mov byte [0x47409f], al
movzx eax, byte [0x473e90]
xor al, 0x90
mov byte [0x4740a0], al
movzx eax, byte [str._5]
xor al, 0xe
mov byte [0x4740a1], al
movzx eax, byte [0x473e92]
xor al, 0xf8
mov byte [0x4740a2], al
movzx eax, byte [0x473e93]
mov ecx, eax
add cl, al
and cl, 0x4a
sub al, cl
add al, 0xa5
mov byte [0x4740a3], al
movsd xmm0, qword [0x473e94]
xorps xmm0, xmmword [0x45f950]
movlps qword [0x4740a4], xmm0
movzx eax, byte [0x473e9c]
xor al, 0xf
mov byte [0x4740ac], al
movzx eax, byte [0x473e9d]
xor al, 0xa4
mov byte [0x4740ad], al
movzx eax, byte [0x473e9e]
xor al, 0xda
mov byte [0x4740ae], al
movzx eax, byte [0x473e9f]
mov ecx, eax
add cl, al
and cl, 0x56
sub al, cl
add al, 0xab
mov byte [str._a__tlz], al
movzx eax, byte [0x473ea0]
xor al, 0x6c
mov byte [0x4740b0], al
movzx eax, byte [0x473ea1]
xor al, 0x87
mov byte [0x4740b1], al
movzx eax, byte [0x473ea2]
mov ecx, eax
not cl
or al, 0xe7
or cl, 0x18
and cl, al
not cl
mov byte [0x4740b2], cl
movzx eax, byte [0x473ea3]
xor al, 0xd7
mov byte [0x4740b3], al
movzx eax, byte [0x473ea4]
mov ecx, eax
add cl, al
and cl, 0xe0
sub al, cl
add al, 0x70
mov byte [0x4740b4], al
mov eax, 0xa96959dc
xor eax, dword [0x473ea5]
mov dword [0x4740b5], eax
movzx eax, byte [0x473ea9]
xor al, 0xd9
mov byte [0x4740b9], al
movzx eax, byte [0x473eaa]
mov ecx, eax
add cl, al
and cl, 0x86
sub al, cl
add al, 0xc3
mov byte [0x4740ba], al
mov eax, 0xec77013d
xor eax, dword [str.y72e]
mov dword [0x4740bb], eax
movzx eax, byte [0x473eaf]
xor al, 0xe2
mov byte [0x4740bf], al
movzx eax, byte [0x473eb0]
xor al, 0x2c
mov byte [0x4740c0], al
movzx eax, byte [0x473eb1]
mov ecx, eax
add cl, al
and cl, 0x42
sub al, cl
add al, 0x21
mov byte [0x4740c1], al
movzx eax, byte [0x473eb2]
xor al, 0x1b
mov byte [0x4740c2], al
movzx eax, byte [0x473eb3]
mov ecx, eax
add cl, al
and cl, 0x5e
sub al, cl
add al, 0x2f
movups xmm0, xmmword [0x473eb4]
xorps xmm0, xmmword [0x45f960]
mov byte [0x4740c3], al
mov eax, 0xc24a9e7
xor eax, dword [0x473ec4]
movups xmmword [0x4740c4], xmm0
mov dword [0x4740d4], eax
movzx eax, byte [0x473ec8]
xor al, 0xc8
mov byte [0x4740d8], al
movzx eax, byte [0x473ec9]
mov ecx, eax
add cl, al
and cl, 0x72
sub al, cl
add al, 0xb9
mov byte [0x4740d9], al
mov eax, 0x70bf1384
xor eax, dword [0x473eca]
mov dword [0x4740da], eax
movzx eax, byte [0x473ece]
xor al, 0x4c
mov byte [0x4740de], al
movzx eax, byte [0x473ecf]
xor al, 0xf7
mov byte [0x4740df], al
movzx eax, byte [0x473ed0]
mov ecx, eax
add cl, al
and cl, 0xf8
sub al, cl
add al, 0x7c
mov byte [0x4740e0], al
movzx eax, byte [0x473ed1]
xor al, 0xdb
mov byte [0x4740e1], al
movzx eax, byte [0x473ed2]
mov ecx, eax
add cl, al
and cl, 0x14
sub al, cl
add al, 0x8a
mov byte [0x4740e2], al
movzx eax, byte [0x473ed3]
xor al, 0xc4
mov byte [0x4740e3], al
movzx eax, byte [0x473ed4]
mov ecx, eax
add cl, al
and cl, 0x9e
sub al, cl
add al, 0x4f
mov byte [0x4740e4], al
movzx eax, byte [0x473ed5]
mov ecx, eax
add cl, al
and cl, 0x14
sub al, cl
add al, 0xa
mov byte [0x4740e5], al
movzx eax, byte [0x473ed6]
xor al, 0xce
mov byte [0x4740e6], al
movzx eax, byte [0x473ed7]
xor al, 0xc6
mov byte [0x4740e7], al
movzx eax, byte [0x473ed8]
mov ecx, eax
add cl, al
and cl, 0x6e
sub al, cl
add al, 0x37
mov byte [0x4740e8], al
movsd xmm0, qword [0x473ed9]
xorps xmm0, xmmword [0x45f970]
movlps qword [0x4740e9], xmm0
movzx eax, byte [0x473ee1]
mov ecx, eax
add cl, al
and cl, 0xdc
sub al, cl
add al, 0x6e
mov byte [0x4740f1], al
movzx eax, byte [0x473ee2]
xor al, 0xaf
mov byte [0x4740f2], al
movzx eax, byte [0x473ee3]
xor al, 0x89
mov byte [0x4740f3], al
movzx eax, byte [0x473ee4]
mov ecx, eax
add cl, al
and cl, 0x4c
sub al, cl
add al, 0x26
mov byte [0x4740f4], al
mov eax, 0xb34077ae
xor eax, dword [0x473ee5]
mov dword [0x4740f5], eax
movzx eax, byte [0x473ee9]
mov ecx, eax
add cl, al
and cl, 0xac
sub al, cl
add al, 0xd6
mov byte [0x4740f9], al
movzx eax, byte [0x473eea]
mov ecx, eax
add cl, al
and cl, 0xd2
sub al, cl
add al, 0xe9
mov byte [0x4740fa], al
movzx eax, byte [0x473eeb]
mov ecx, eax
add cl, al
and cl, 0xf6
sub al, cl
add al, 0x7b
mov byte [0x4740fb], al
movzx eax, byte [0x473eec]
xor al, 0xec
mov byte [0x4740fc], al
movzx eax, byte [0x473eed]
mov ecx, eax
add cl, al
and cl, 0x64
sub al, cl
add al, 0xb2
mov byte [0x4740fd], al
movzx eax, byte [0x473eee]
mov ecx, eax
add cl, al
and cl, 0xf6
sub al, cl
add al, 0xfb
mov byte [0x4740fe], al
mov eax, 0x86d0b0e7
xor eax, dword [0x473eef]
mov dword [0x4740ff], eax
movzx eax, byte [0x473ef3]
mov ecx, eax
not cl
or cl, 4
or al, 0xfb
and al, cl
mov ecx, 0x9dd41eaa
xor ecx, dword [0x473ef4]
mov byte [0x474103], al
mov dword [0x474104], ecx
movzx eax, byte [0x473ef8]
xor al, 0x5d
mov byte [0x474108], al
movzx eax, byte [0x473ef9]
mov ecx, eax
add cl, al
and cl, 6
sub al, cl
add al, 0x83
mov byte [0x474109], al
mov eax, 0x60b05f94
xor eax, dword [0x473efa]
mov dword [0x47410a], eax
movzx eax, byte [0x473efe]
xor al, 0x47
mov byte [0x47410e], al
movzx eax, byte [0x473eff]
xor al, 0xc0
mov byte [0x47410f], al
movzx eax, byte [0x473f00]
mov ecx, eax
add cl, al
and cl, 0xde
sub al, cl
add al, 0x6f
mov byte [0x474110], al
movzx eax, byte [0x473f01]
xor al, 0xc
mov byte [0x474111], al
movzx eax, byte [0x473f02]
xor al, 0xac
mov byte [0x474112], al
movzx eax, byte [0x473f03]
xor al, 0xbb
mov byte [0x474113], al
movzx eax, byte [0x473f04]
mov ecx, eax
add cl, al
and cl, 0x5a
sub al, cl
add al, 0x2d
mov byte [0x474114], al
movzx eax, byte [0x473f05]
xor al, 0x1d
mov byte [0x474115], al
movzx eax, byte [0x473f06]
mov ecx, eax
add cl, al
and cl, 0xe6
sub al, cl
add al, 0xf3
mov byte [0x474116], al
mov eax, 0x639d1887
xor eax, dword [0x473f07]
mov dword [0x474117], eax
movzx eax, byte [0x473f0b]
xor al, 0x90
mov byte [0x47411b], al
movzx eax, byte [0x473f0c]
xor al, 0x8b
mov byte [0x47411c], al
movzx eax, byte [0x473f0d]
mov ecx, eax
add cl, al
and cl, 0x82
sub al, cl
add al, 0x41
mov byte [0x47411d], al
movzx eax, byte [0x473f0e]
xor al, 0xb1
mov byte [0x47411e], al
movzx eax, byte [0x473f0f]
xor al, 0x6d
mov byte [0x47411f], al
movzx eax, byte [0x473f10]
mov ecx, eax
add cl, al
and cl, 0xfc
sub al, cl
add al, 0xfe
mov byte [0x474120], al
mov eax, 0x22d2ce70
xor eax, dword [0x473f11]
mov dword [0x474121], eax
movzx eax, byte [0x473f15]
xor al, 0xdf
mov byte [0x474125], al
movzx eax, byte [0x473f16]
mov ecx, eax
add cl, al
and cl, 0x88
sub al, cl
add al, 0xc4
mov byte [0x474126], al
movzx eax, byte [0x473f17]
mov ecx, eax
not cl
or al, 0xee
or cl, 0x11
and cl, al
not cl
mov byte [0x474127], cl
mov eax, 0x28981d09
xor eax, dword [0x473f18]
mov dword [0x474128], eax
movzx eax, byte [0x473f1c]
mov ecx, eax
not cl
or cl, 0x59
or al, 0xa6
and al, cl
mov ecx, 0x1758137b
xor ecx, dword [str.MRoV]
mov byte [0x47412c], al
mov dword [0x47412d], ecx
movzx eax, byte [0x473f21]
mov ecx, eax
add cl, al
and cl, 0x3e
sub al, cl
add al, 0x9f
mov byte [0x474131], al
mov eax, 0x6f0eeb22
xor eax, dword [0x473f22]
mov dword [0x474132], eax
movzx eax, byte [0x473f26]
xor al, 0x82
mov byte [0x474136], al
movzx eax, byte [0x473f27]
mov ecx, eax
not cl
or cl, 0x7e
or al, 0x81
and al, cl
mov byte [0x474137], al
movzx eax, byte [str.ZIUq_a]
xor al, 0x1b
mov byte [0x474138], al
movzx eax, byte [0x473f29]
mov ecx, eax
add cl, al
and cl, 0x14
sub al, cl
add al, 0xa
mov byte [0x474139], al
movzx eax, byte [0x473f2a]
xor al, 0x14
mov byte [0x47413a], al
movzx eax, byte [0x473f2b]
xor al, 0x35
mov byte [0x47413b], al
movzx eax, byte [0x473f2c]
mov ecx, eax
add cl, al
and cl, 0xc6
sub al, cl
add al, 0x63
mov byte [0x47413c], al
movzx eax, byte [0x473f2d]
xor al, 0x24
mov byte [0x47413d], al
movzx eax, byte [0x473f2e]
mov ecx, eax
add cl, al
and cl, 0x54
sub al, cl
add al, 0xaa
mov byte [0x47413e], al
movzx eax, byte [0x473f2f]
mov ecx, eax
add cl, al
and cl, 0x4e
sub al, cl
add al, 0xa7
mov byte [0x47413f], al
movsd xmm0, qword [0x473f30]
xorps xmm0, xmmword [0x45f980]
movlps qword [0x474140], xmm0
movzx eax, byte [0x473f38]
xor al, 0x6f
mov byte [0x474148], al
movzx eax, byte [0x473f39]
xor al, 0x15
mov byte [0x474149], al
movzx eax, byte [0x473f3a]
mov ecx, eax
not cl
or al, 0x12
or cl, 0xed
and cl, al
not cl
mov byte [0x47414a], cl
movzx eax, byte [0x473f3b]
xor al, 0xe9
mov byte [0x47414b], al
movzx eax, byte [str.I]
xor al, 0x7f
mov byte [0x47414c], al
movzx eax, byte [0x473f3d]
xor al, 0x7f
mov byte [0x47414d], al
movzx eax, byte [0x473f3e]
mov ecx, eax
add cl, al
and cl, 0x10
sub al, cl
add al, 0x88
mov byte [0x47414e], al
mov eax, 0xce891c91
xor eax, dword [0x473f3f]
mov dword [0x47414f], eax
movzx eax, byte [str.B__5X]
mov ecx, eax
add cl, al
and cl, 0xf6
sub al, cl
add al, 0x7b
mov byte [0x474153], al
movsd xmm0, qword [0x473f44]
xorps xmm0, xmmword [0x45f990]
movlps qword [0x474154], xmm0
movzx eax, byte [0x473f4c]
xor al, 0x44
mov byte [0x47415c], al
movzx eax, byte [0x473f4d]
xor al, 0x53
mov byte [0x47415d], al
movzx eax, byte [0x473f4e]
mov ecx, eax
add cl, al
and cl, 0x5c
sub al, cl
add al, 0xae
mov byte [0x47415e], al
movsd xmm0, qword [0x473f4f]
xorps xmm0, xmmword [0x45f9a0]
movlps qword [0x47415f], xmm0
mov eax, 0x167fbf7c
xor eax, dword [0x473f57]
mov dword [0x474167], eax
movzx eax, byte [0x473f5b]
mov ecx, eax
add cl, al
and cl, 0x64
sub al, cl
add al, 0x32
mov byte [0x47416b], al
movzx eax, byte [0x473f5c]
xor al, 0xfb
mov byte [0x47416c], al
movzx eax, byte [0x473f5d]
mov ecx, eax
add cl, al
and cl, 0xe8
sub al, cl
add al, 0x74
mov byte [0x47416d], al
movzx eax, byte [0x473f5e]
xor al, 0xd2
mov byte [0x47416e], al
movzx eax, byte [0x473f5f]
mov ecx, eax
add cl, al
and cl, 0xca
sub al, cl
add al, 0xe5
mov byte [0x47416f], al
movsd xmm0, qword [0x473f60]
xorps xmm0, xmmword [0x45f9b0]
movlps qword [0x474170], xmm0
movzx eax, byte [str.u]
xor al, 0x36
mov byte [0x474178], al
movzx eax, byte [0x473f69]
xor al, 0x95
mov byte [0x474179], al
movzx eax, byte [0x473f6a]
xor al, 0xe1
mov byte [0x47417a], al
movzx eax, byte [0x473f6b]
mov ecx, eax
add cl, al
and cl, 0x1c
sub al, cl
add al, 0x8e
mov byte [0x47417b], al
movzx eax, byte [0x473f6c]
xor al, 0xf9
mov byte [0x47417c], al
movzx eax, byte [0x473f6d]
mov ecx, eax
add cl, al
and cl, 0xde
sub al, cl
add al, 0x6f
mov byte [0x47417d], al
movzx eax, byte [0x473f6e]
xor al, 0x55
mov byte [0x47417e], al
movzx eax, byte [0x473f6f]
xor al, 0x22
mov byte [0x47417f], al
movzx eax, byte [0x473f70]
mov ecx, eax
not cl
or cl, 0xbf
or al, 0x40
and al, cl
mov byte [0x474180], al
movzx eax, byte [0x473f71]
xor al, 0xc3
mov byte [0x474181], al
movzx eax, byte [0x473f72]
xor al, 0xb7
mov byte [0x474182], al
movzx eax, byte [0x473f73]
mov ecx, eax
add cl, al
and cl, 0x66
sub al, cl
add al, 0x33
mov byte [0x474183], al
mov eax, 0x8c53d9dc
xor eax, dword [0x473f74]
mov dword [0x474184], eax
movzx eax, byte [0x473f78]
xor al, 0xde
mov byte [0x474188], al
movzx eax, byte [0x473f79]
mov ecx, eax
add cl, al
and cl, 0x40
sub al, cl
add al, 0xa0
mov ecx, 0xab4d845b
xor ecx, dword [0x473f7a]
mov byte [0x474189], al
mov dword [0x47418a], ecx
movzx eax, byte [0x473f7e]
xor al, 0xf7
mov byte [0x47418e], al
movzx eax, byte [0x473f7f]
mov ecx, eax
add cl, al
and cl, 0xee
sub al, cl
add al, 0x77
mov byte [0x47418f], al
movaps xmm0, xmmword [0x473f80]
xorps xmm0, xmmword [0x45f9c0]
movss dword [0x474190], xmm0
movzx eax, byte [0x473f84]
xor al, 0x5e
mov byte [0x474194], al
movzx eax, byte [0x473f85]
xor al, 0x65
mov byte [0x474195], al
movzx eax, byte [0x473f86]
movd xmm0, dword [0x473f87]
movdqa xmm1, xmm0
paddb xmm1, xmm0
pand xmm1, xmmword [0x45f9d0]
not al
psubb xmm0, xmm1
paddb xmm0, xmmword [0x45f9e0]
mov byte [0x474196], al
movsd xmm1, qword [0x473f8b]
xorps xmm1, xmmword [0x45f9f0]
movd dword [0x474197], xmm0
movlps qword [0x47419b], xmm1
movzx eax, byte [0x473f93]
mov ecx, eax
add cl, al
and cl, 0x3a
sub al, cl
add al, 0x9d
mov byte [0x4741a3], al
movzx eax, byte [0x473f94]
xor al, 0xdd
mov byte [0x4741a4], al
movzx eax, byte [0x473f95]
xor al, 0x3e
mov byte [0x4741a5], al
movzx eax, byte [0x473f96]
mov ecx, eax
add cl, al
and cl, 0x34
sub al, cl
add al, 0x1a
mov byte [0x4741a6], al
movzx eax, byte [0x473f97]
xor al, 0xd1
mov byte [0x4741a7], al
movzx eax, byte [0x473f98]
xor al, 0xa1
mov byte [0x4741a8], al
movzx eax, byte [0x473f99]
mov ecx, eax
not cl
or cl, 0xc5
or al, 0x3a
and al, cl
mov byte [0x4741a9], al
movzx eax, byte [0x473f9a]
xor al, 0x15
mov byte [0x4741aa], al
movzx eax, byte [0x473f9b]
mov ecx, eax
add cl, al
and cl, 0xc4
sub al, cl
add al, 0xe2
mov byte [0x4741ab], al
mov eax, 0xbdb8fc48
xor eax, dword [0x473f9c]
mov dword [0x4741ac], eax
movzx eax, byte [0x473fa0]
not al
mov byte [0x4741b0], al
movzx eax, byte [0x473fa1]
xor al, 0x6b
mov byte [0x4741b1], al
movzx eax, byte [0x473fa2]
mov ecx, eax
not cl
or cl, 0xbb
or al, 0x44
and al, cl
movups xmm0, xmmword [0x473fa3]
xorps xmm0, xmmword [0x45fa00]
mov byte [0x4741b2], al
mov eax, 0x5fb5d660
xor eax, dword [0x473fb3]
movups xmmword [0x4741b3], xmm0
mov dword [0x4741c3], eax
movzx eax, byte [0x473fb7]
mov ecx, eax
add cl, al
and cl, 0xb0
sub al, cl
add al, 0xd8
mov byte [0x4741c7], al
movzx eax, byte [0x473fb8]
xor al, 0x56
mov byte [0x4741c8], al
movzx eax, byte [0x473fb9]
xor al, 0x10
mov byte [0x4741c9], al
movzx eax, byte [0x473fba]
xor al, 0xb2
mov byte [0x4741ca], al
movzx eax, byte [0x473fbb]
mov ecx, eax
add cl, al
and cl, 0x5e
sub al, cl
add al, 0xaf
mov byte [0x4741cb], al
movzx eax, byte [0x473fbc]
mov ecx, eax
add cl, al
and cl, 0x8e
sub al, cl
add al, 0x47
mov byte [0x4741cc], al
mov eax, 0x33ca0af0
xor eax, dword [0x473fbd]
mov dword [0x4741cd], eax
movzx eax, byte [0x473fc1]
xor al, 0xe
mov byte [0x4741d1], al
movzx eax, byte [0x473fc2]
xor al, 0x2c
mov byte [0x4741d2], al
movzx eax, byte [0x473fc3]
mov ecx, eax
add cl, al
and cl, 0x40
sub al, cl
add al, 0xa0
mov byte [0x4741d3], al
mov eax, 0xe86693c7
xor eax, dword [0x473fc4]
mov dword [0x4741d4], eax
movzx eax, byte [0x473fc8]
mov ecx, eax
add cl, al
and cl, 0x60
sub al, cl
add al, 0xb0
mov byte [0x4741d8], al
mov eax, 0x5c2ca8ff
xor eax, dword [0x473fc9]
mov dword [0x4741d9], eax
movzx eax, byte [0x473fcd]
mov ecx, eax
add cl, al
and cl, 0x3e
sub al, cl
add al, 0x1f
mov byte [0x4741dd], al
movzx eax, byte [0x473fce]
xor al, 0x31
mov byte [0x4741de], al
movzx eax, byte [0x473fcf]
mov ecx, eax
add cl, al
and cl, 0xe8
sub al, cl
add al, 0xf4
mov byte [0x4741df], al
movzx eax, byte [0x473fd0]
mov ecx, eax
add cl, al
and cl, 0xac
sub al, cl
mov ecx, edx
add al, 0xd6
mov byte [0x4741e0], al
mov eax, dword [ebp + 0xc]
mov dword [0x482860], 1
push eax
mov esi, esp
cmp ecx, 0x24
ja 0x4443d5
cmp ecx, 1
je 0x4443d5
mov edx, dword [ebp + 0x10]
mov ebx, dword [ebp + 8]
test ebx, ebx
js 0x444280
lea edi, [eax + edx - 1]
mov byte [eax + edx - 1], 0
jne 0x44428b
lea eax, [edi - 1]
mov dword [esi], eax
mov byte [edi - 1], 0x30
jmp 0x4443d3
neg ebx
lea edi, [eax + edx]
dec edi
mov byte [eax + edx - 1], 0
cmp ecx, 0xa
mov dword [ebp - 0x10], esi
je 0x444325
cmp ecx, 0x10
jne 0x444300
cmp ebx, 0x100
jb 0x444373
mov eax, ebx
nop word [eax + eax]
movzx ecx, bl
add ecx, ecx
movzx edx, byte [ecx + 0x473fe1]
mov byte [edi - 1], dl
movzx ecx, byte [ecx + 0x473fe0]
mov byte [edi - 2], cl
add edi, 0xfffffffe
shr eax, 8
cmp ebx, 0xffff
mov ebx, eax
ja 0x4442b0
cmp eax, 0xf
ja 0x44437e
movzx eax, byte [eax + str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ]
lea ecx, [edi - 1]
mov esi, dword [ebp - 0x10]
mov dword [esi], ecx
mov byte [edi - 1], al
jmp 0x4443d3
mov eax, ebx
xor edx, edx
div ecx
mov esi, ecx
movzx ecx, byte [edx + str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ]
mov byte [edi - 1], cl
mov ecx, esi
dec edi
cmp ebx, esi
mov ebx, eax
jae 0x444300
mov esi, dword [ebp - 0x10]
mov dword [esi], edi
jmp 0x4443d3
cmp ebx, 0x64
jb 0x44439e
mov esi, 0x51eb851f
nop
mov eax, ebx
mul esi
shr edx, 5
imul eax, edx, 0x64
mov ecx, ebx
sub ecx, eax
movzx eax, byte [ecx + ecx + 0x473d01]
mov byte [edi - 1], al
movzx eax, byte [ecx + ecx + 0x473d00]
mov byte [edi - 2], al
add edi, 0xfffffffe
cmp ebx, 0x270f
mov ebx, edx
ja 0x444330
cmp edx, 9
ja 0x4443a5
movzx eax, byte [edx + str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ]
mov byte [edi - 1], al
dec edi
jmp 0x4443be
mov eax, ebx
cmp eax, 0xf
jbe 0x4442e2
movzx ecx, byte [eax + eax + 0x473fe1]
mov byte [edi - 1], cl
movzx eax, byte [eax + eax + 0x473fe0]
lea ecx, [edi - 2]
mov esi, dword [ebp - 0x10]
mov dword [esi], ecx
mov byte [edi - 2], al
jmp 0x4443d3
mov edx, ebx
cmp edx, 9
jbe 0x444366
movzx eax, byte [edx + edx + 0x473d01]
mov byte [edi - 1], al
movzx eax, byte [edx + edx + 0x473d00]
mov byte [edi - 2], al
add edi, 0xfffffffe
mov esi, dword [ebp - 0x10]
mov eax, dword [ebp + 8]
mov dword [esi], edi
test eax, eax
jns 0x4443d3
lea eax, [edi - 1]
mov dword [esi], eax
mov byte [edi - 1], 0x2d
mov eax, dword [esi]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret