Function at 0x1002ee70
Capabilities:
Authenticate hmac
Encrypt data using speck

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x517c
call fcn.100737a0
push ebx
push esi
push edi
mov eax, 0xffff9305
mov word [ebp - 0x6a4], ax
mov dword [ebp - 0x48], 0x3af0
mov dword [ebp - 0x2c], 0x4ab88d0e
mov cx, word [0x100a5128]
mov word [ebp - 0x14], cx
mov dl, byte [0x100a5138]
mov byte [ebp - 1], dl
movsx eax, byte [0x100a5026]
cdq
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
mov byte [ebp - 3], 0x45
mov eax, 0x16
mov word [ebp - 0x10], ax
mov byte [ebp - 6], 0xae
mov ecx, 0xb65b
mov word [ebp - 0x18], cx
mov byte [ebp - 2], 0xa1
movsx eax, word [0x100a50dc]
cdq
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x30], 0x8429
mov dl, byte [0x100a5130]
mov byte [ebp - 4], dl
movsx eax, byte [0x100a504b]
cdq
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
mov byte [ebp - 5], 0x25
xor eax, eax
mov dword [ebp - 0x38], 0x5c72
mov dword [ebp - 0x34], eax
mov cl, byte [0x100a50dc]
mov byte [ebp - 7], cl
mov dx, word [0x100a510c]
mov word [ebp - 0xc], dx
mov dword [ebp - 0x44], 0x6e
movsx eax, word [0x100a515c]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 0x1ab], 0xda
movsx ecx, word [0x100a50fc]
mov dword [ebp - 0xd1c], ecx
mov edx, 0xc72d7
mov dword [ebp - 0xea4], 0x1322a19a
mov dword [ebp - 0xea0], edx
xor eax, eax
mov dword [ebp - 0xeac], 0xae
mov dword [ebp - 0xea8], eax
mov cl, byte [0x100a503b]
mov byte [ebp - 0x1ac], cl
mov dword [ebp - 0xd20], 5
mov edx, 0xb79e2
mov dword [ebp - 0xeb4], 0xad8449d2
mov dword [ebp - 0xeb0], edx
mov ax, word [0x100a5140]
mov word [ebp - 0x6a8], ax
mov dword [ebp - 0xd24], 0xcb
movsx ecx, word [0x100a50fc]
mov dword [ebp - 0xd28], ecx
mov edx, dword [0x100a5158]
mov dword [ebp - 0xd2c], edx
movsx eax, word [0x100a50ec]
cdq
mov dword [ebp - 0xebc], eax
mov dword [ebp - 0xeb8], edx
movsx eax, word [0x100a5134]
mov dword [ebp - 0xd30], eax
mov byte [ebp - 0x1ad], 0x27
mov cl, byte [0x100a5130]
mov byte [ebp - 0x1ae], cl
mov byte [ebp - 0x109], 0xad
mov dx, word [0x100a5134]
mov byte [ebp - 0x10a], dl
movzx eax, word [0x100a5148]
cdq
mov dword [ebp - 0xec4], eax
mov dword [ebp - 0xec0], edx
movsx eax, word [0x100a515c]
not eax
movzx ecx, byte [ebp - 1]
cmp eax, ecx
je 0x1002f074
cmp dword [ebp - 0x48], 0
jne 0x1002f050
mov dword [ebp - 0x498], 1
jmp 0x1002f05a
mov dword [ebp - 0x498], 0
mov edx, dword [0x100a5158]
cmp edx, dword [ebp - 0x498]
jbe 0x1002f074
mov dword [ebp - 0x4a8], 1
jmp 0x1002f07e
mov dword [ebp - 0x4a8], 0
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x774], eax
mov dword [ebp - 0x770], ecx
mov edx, dword [ebp - 0x774]
or edx, dword [ebp - 0x770]
jne 0x1002f0aa
mov dword [ebp - 0x49c], 1
jmp 0x1002f0b4
mov dword [ebp - 0x49c], 0
movzx eax, word [ebp - 0x18]
cmp dword [ebp - 0x49c], eax
jg 0x1002f130
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x77c], ecx
mov dword [ebp - 0x778], edx
mov eax, dword [ebp - 0x77c]
or eax, dword [ebp - 0x778]
jne 0x1002f0ec
mov dword [ebp - 0x4a0], 1
jmp 0x1002f0f6
mov dword [ebp - 0x4a0], 0
movzx ecx, byte [ebp - 4]
cmp dword [ebp - 0x4a0], ecx
jne 0x1002f10e
mov dword [ebp - 0x4a4], 1
jmp 0x1002f118
mov dword [ebp - 0x4a4], 0
mov edx, dword [ebp - 0x4a4]
not edx
test edx, edx
je 0x1002f130
mov dword [ebp - 0x4d8], 1
jmp 0x1002f13a
mov dword [ebp - 0x4d8], 0
mov eax, dword [ebp - 0x4a8]
cmp eax, dword [ebp - 0x4d8]
jg 0x1002f293
mov dword [ebp - 0x134], 0
jmp 0x1002f167
mov ecx, dword [ebp - 0x134]
add ecx, 2
mov dword [ebp - 0x134], ecx
cmp dword [ebp - 0x134], 0x358
jge 0x1002f28e
mov dword [ebp - 0x138], 0
jmp 0x1002f192
mov edx, dword [ebp - 0x138]
add edx, 1
mov dword [ebp - 0x138], edx
cmp dword [ebp - 0x138], 0x319
jge 0x1002f277
mov dword [ebp - 0x13c], 0x3c4
jmp 0x1002f1bd
mov eax, dword [ebp - 0x13c]
sub eax, 1
mov dword [ebp - 0x13c], eax
cmp dword [ebp - 0x13c], 0
jle 0x1002f260
xor ecx, ecx
mov dword [ebp - 0x40], 0x5e35
mov dword [ebp - 0x3c], ecx
mov eax, dword [0x100a50f8]
cdq
mov ecx, eax
mov edx, dword [0x100a50f0]
mov eax, dword [0x100a50f4]
mov dword [ebp - 0xd34], eax
add ecx, edx
mov eax, dword [0x100a50f8]
cdq
add eax, ecx
mov dword [0x100a50f8], eax
movsx ecx, word [0x100a513c]
test ecx, ecx
je 0x1002f21c
movzx eax, word [ebp - 0x14]
cdq
mov dword [ebp - 0x4b0], eax
mov dword [ebp - 0x4ac], edx
jmp 0x1002f233
mov edx, dword [0x100a50f0]
mov eax, dword [0x100a50f4]
mov dword [ebp - 0x4b0], edx
mov dword [ebp - 0x4ac], eax
mov ecx, dword [ebp - 0x4b0]
mov edx, dword [ebp - 0x4ac]
mov dword [0x100a50f0], ecx
mov dword [0x100a50f4], edx
mov ax, word [0x100a5134]
add ax, 1
mov word [0x100a5134], ax
jmp 0x1002f1ae
mov cx, word [0x100a5134]
add cx, 1
mov word [0x100a5134], cx
jmp 0x1002f183
mov edx, dword [ebp - 0x40]
add edx, 1
mov eax, dword [ebp - 0x3c]
adc eax, 0
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], eax
jmp 0x1002f158
jmp 0x1002f36f
mov cx, word [0x100a5bfc]
mov word [0x100a5138], cx
movzx edx, byte [ebp - 5]
movzx eax, byte [0x100a503b]
sub edx, eax
mov byte [ebp - 5], dl
movzx ecx, word [0x100a512c]
movsx edx, byte [ebp - 6]
mov eax, dword [0x100a5108]
add eax, edx
sub ecx, eax
xor esi, esi
movsx eax, byte [ebp - 6]
cdq
mov edi, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x24]
add edi, eax
adc ebx, edx
movzx eax, word [ebp - 0x10]
cdq
mov dword [ebp - 0x6ac], ecx
mov ecx, 0x443761d3
sub ecx, eax
mov eax, 0xb2ee6
sbb eax, edx
not ecx
not eax
sub edi, ecx
sbb ebx, eax
push ebx
push edi
push esi
mov ecx, dword [ebp - 0x6ac]
push ecx
call fcn.10073670
mov dword [ebp - 0x2c], eax
movzx ecx, byte [ebp - 2]
movsx edx, word [0x100a5134]
add ecx, edx
movzx eax, byte [ebp - 1]
sub eax, dword [0x100a5108]
sub ecx, eax
xor esi, esi
movzx edx, byte [ebp - 4]
mov eax, dword [ebp - 0x4c]
imul eax, edx
cdq
mov edi, eax
mov ebx, edx
mov eax, dword [ebp - 0x4c]
cdq
mov dword [ebp - 0x6b4], ecx
mov ecx, dword [0x100a5118]
mov dword [ebp - 0x6b0], esi
mov esi, dword [0x100a511c]
sub ecx, eax
sbb esi, edx
sub edi, ecx
sbb ebx, esi
push ebx
push edi
mov ecx, dword [ebp - 0x6b0]
push ecx
mov ecx, dword [ebp - 0x6b4]
push ecx
call fcn.10073670
mov dword [ebp - 0x2c], eax
mov edx, dword [0x100a5bfc]
mov dword [ebp - 0x148], edx
mov eax, 2
mov word [0x100a5140], ax
movzx ecx, byte [ebp - 1]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x44], 2
movzx eax, byte [str._NgcSignWithUserIdK]
cdq
sub eax, 0x50b037ba
sbb edx, 0x5d368
mov dword [0x100a5100], eax
mov dword [0x100a5104], edx
mov dx, word [0x100a5bfc]
mov word [ebp - 0x18], dx
movsx eax, byte [0x100a504b]
cdq
mov ecx, eax
mov edx, dword [0x100a5100]
mov eax, dword [0x100a5104]
mov dword [ebp - 0xd38], eax
sub ecx, edx
mov edx, dword [0x100a5110]
mov eax, dword [0x100a5114]
mov dword [ebp - 0xd3c], eax
add ecx, edx
movsx eax, word [0x100a50ec]
movzx edx, byte [ebp - 5]
sub eax, edx
movsx edx, byte [0x100a504b]
sub eax, edx
cdq
or ecx, eax
mov byte [ebp - 7], cl
movsx eax, word [0x100a5140]
mov dword [ebp - 0x140], eax
cmp dword [ebp - 0x140], 0
je 0x1002f43a
cmp dword [ebp - 0x140], 1
je 0x1002f485
cmp dword [ebp - 0x140], 2
je 0x1002f4ea
jmp 0x1002f569
mov byte [ebp - 4], 0x68
mov byte [0x100a503b], 0x46
mov cl, byte [ebp - 0x2c]
mov byte [ebp - 2], cl
movzx edx, word [ebp - 0xc]
test edx, edx
jne 0x1002f45f
mov dword [ebp - 0x4dc], 1
jmp 0x1002f469
mov dword [ebp - 0x4dc], 0
mov eax, dword [ebp - 0x48]
xor eax, dword [0x100a50e8]
add eax, dword [ebp - 0x4dc]
not eax
mov word [0x100a510c], ax
jmp 0x1002f569
movzx ecx, word [ebp - 0xc]
movzx edx, word [ebp - 0x14]
lea eax, [edx + ecx + 0xcf18]
mov word [ebp - 0x14], ax
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0xd40], edx
sub ecx, 0x2ed
movsx eax, word [0x100a515c]
cdq
xor eax, ecx
mov word [0x100a515c], ax
mov eax, dword [ebp - 0x40]
sub eax, 0xdca3
mov ecx, dword [ebp - 0x3c]
sbb ecx, 0
mov dword [0x100a5100], eax
mov dword [0x100a5104], ecx
movzx edx, word [ebp - 0xc]
imul edx, dword [0x100a50f8]
movzx eax, word [ebp - 0xc]
sub eax, edx
mov word [ebp - 0xc], ax
jmp 0x1002f569
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0xd44], edx
and ecx, 0xc29dee35
mov dword [ebp - 0x4c], ecx
movzx eax, word [0x100a512c]
add eax, dword [0x100a5144]
movzx ecx, word [0x100a512c]
sub ecx, eax
mov word [0x100a512c], cx
movzx edx, word [0x100a5148]
test edx, edx
je 0x1002f536
movzx eax, word [0x100a512c]
mov dword [ebp - 0x4e0], eax
jmp 0x1002f543
movsx ecx, word [0x100a50fc]
mov dword [ebp - 0x4e0], ecx
mov dx, word [ebp - 0x4e0]
mov word [ebp - 0xc], dx
movsx eax, word [0x100a513c]
cdq
add eax, dword [ebp - 0x40]
mov word [0x100a513c], ax
mov ax, word [0x100a5bfc]
mov word [ebp - 0x10], ax
mov ecx, dword [ebp - 0x148]
add ecx, 0x41a
mov dword [ebp - 0x738], ecx
mov dword [ebp - 0x144], 0
jmp 0x1002f596
mov edx, dword [ebp - 0x144]
add edx, 1
mov dword [ebp - 0x144], edx
cmp dword [ebp - 0x144], 0x116
jge 0x1002f69e
movzx eax, word [0x100a512c]
cdq
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
push edx
push eax
push esi
push ecx
call fcn.10073670
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], esi
movsx eax, word [0x100a50ec]
cdq
mov dword [0x100a5120], eax
mov dword [0x100a5124], edx
movsx edx, word [0x100a5138]
movsx eax, word [0x100a5138]
sub edx, eax
movzx ecx, byte [ebp - 2]
sub edx, ecx
mov word [0x100a50dc], dx
movzx edx, word [ebp - 0xc]
test edx, edx
jne 0x1002f611
mov dword [ebp - 0x4e4], 1
jmp 0x1002f61b
mov dword [ebp - 0x4e4], 0
cmp dword [0x100a50f8], 0
jne 0x1002f630
mov dword [ebp - 0x4e8], 1
jmp 0x1002f63a
mov dword [ebp - 0x4e8], 0
movzx eax, byte [ebp - 2]
movsx ecx, byte [ebp - 6]
add eax, ecx
jne 0x1002f652
mov dword [ebp - 0x1c0], 1
jmp 0x1002f65c
mov dword [ebp - 0x1c0], 0
mov edx, dword [ebp - 0x4e4]
sub edx, dword [ebp - 0x4e8]
add edx, dword [ebp - 0x1c0]
mov word [0x100a5148], dx
movzx eax, word [0x100a5130]
add eax, 0x434d8c9d
mov word [0x100a50dc], ax
mov cx, word [0x100a513c]
add cx, 1
mov word [0x100a513c], cx
jmp 0x1002f587
mov edx, dword [ebp - 0x148]
add edx, 0x5a9
mov dword [ebp - 0x734], edx
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov dword [ebp - 0x784], eax
mov dword [ebp - 0x780], ecx
mov dword [ebp - 0x78c], edx
mov dword [ebp - 0x788], esi
mov eax, dword [ebp - 0x784]
cmp eax, dword [ebp - 0x78c]
jne 0x1002f6fc
mov ecx, dword [ebp - 0x780]
cmp ecx, dword [ebp - 0x788]
jne 0x1002f6fc
mov dword [ebp - 0x1c4], 1
jmp 0x1002f706
mov dword [ebp - 0x1c4], 0
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x794], edx
mov dword [ebp - 0x790], eax
cmp dword [ebp - 0x794], 0x28
jne 0x1002f736
cmp dword [ebp - 0x790], 0
jne 0x1002f736
mov dword [ebp - 0x1c8], 1
jmp 0x1002f740
mov dword [ebp - 0x1c8], 0
mov ecx, dword [ebp - 0x1c4]
cmp ecx, dword [ebp - 0x1c8]
jg 0x1002f811
movsx eax, word [0x100a515c]
cdq
mov ecx, dword [0x100a50f0]
mov esi, dword [0x100a50f4]
push edx
push eax
push esi
push ecx
call fcn.10073670
mov dword [ebp - 0x79c], eax
mov dword [ebp - 0x798], edx
mov edx, dword [ebp - 0x79c]
or edx, dword [ebp - 0x798]
jne 0x1002f79d
xor eax, eax
mov dword [ebp - 0x600], 1
mov dword [ebp - 0x5fc], eax
jmp 0x1002f7a8
xorps xmm0, xmm0
movlpd qword [ebp - 0x600], xmm0
mov ecx, dword [ebp - 0x600]
mov edx, dword [ebp - 0x5fc]
mov dword [0x100a50e0], ecx
mov dword [0x100a50e4], edx
mov eax, dword [0x100a50f8]
xor eax, 0x1d8304f8
movzx ecx, byte [ebp - 1]
and ecx, eax
mov byte [ebp - 1], cl
movzx edx, word [ebp - 0xc]
sub edx, dword [0x100a50e8]
movzx eax, byte [ebp - 5]
lea ecx, [edx + eax + 0xd3]
test ecx, ecx
jne 0x1002f7fa
mov edx, 1
mov word [ebp - 0x96], dx
jmp 0x1002f803
xor eax, eax
mov word [ebp - 0x96], ax
mov cx, word [ebp - 0x96]
mov word [0x100a5148], cx
mov edx, dword [ebp - 0x148]
add edx, 0x4fa
mov dword [ebp - 0xd48], edx
mov eax, dword [0x100a5110]
mov ecx, dword [0x100a5114]
mov dword [ebp - 0xd4c], ecx
push eax
call dword [sym.imp.USER32.dll_GetTopWindow]
mov dword [ebp - 0x44], eax
mov edx, dword [0x100a5bfc]
mov dword [ebp - 0x14c], edx
mov al, byte [0x100a5bfc]
mov byte [str._NgcSignWithUserIdK], al
movzx ecx, byte [0x100a503b]
sub ecx, dword [0x100a5108]
mov esi, dword [0x100a5158]
sub esi, ecx
xor ecx, ecx
movzx eax, word [ebp - 0x10]
cdq
mov edi, eax
mov ebx, edx
and edi, dword [ebp - 0x38]
and ebx, dword [ebp - 0x34]
movzx eax, word [ebp - 0x10]
movsx edx, word [0x100a515c]
add eax, edx
cdq
sub edi, eax
sbb ebx, edx
push ebx
push edi
push ecx
push esi
call fcn.10073670
mov byte [ebp - 7], al
movsx eax, word [0x100a5138]
add eax, 0x5882b43c
mov byte [0x100a503b], al
movsx eax, byte [0x100a5026]
cdq
mov ecx, eax
mov esi, edx
xor ecx, dword [0x100a5150]
xor esi, dword [0x100a5154]
movzx eax, byte [0x100a503b]
movsx edx, word [0x100a513c]
xor eax, edx
cdq
add ecx, eax
adc esi, edx
mov dword [ebp - 0x7a4], ecx
mov dword [ebp - 0x7a0], esi
mov eax, dword [ebp - 0x7a4]
or eax, dword [ebp - 0x7a0]
jne 0x1002f904
xor ecx, ecx
mov dword [ebp - 0x7ac], 1
mov dword [ebp - 0x7a8], ecx
jmp 0x1002f90f
xorps xmm0, xmm0
movlpd qword [ebp - 0x7ac], xmm0
mov ecx, dword [ebp - 0x30]
sub ecx, dword [0x100a5150]
movzx eax, word [ebp - 0xc]
cdq
sub ecx, eax
xor ecx, dword [ebp - 0x7ac]
mov word [ebp - 0x18], cx
mov edx, dword [ebp - 0x14c]
add edx, 0x4bf
mov dword [ebp - 0xd50], edx
movzx eax, word [ebp - 0x10]
test eax, eax
je 0x1002f959
movsx eax, word [0x100a50fc]
cdq
mov dword [ebp - 0x4b8], eax
mov dword [ebp - 0x4b4], edx
jmp 0x1002f96b
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x4b8], ecx
mov dword [ebp - 0x4b4], edx
mov eax, dword [ebp - 0x4b8]
mov ecx, dword [ebp - 0x4b4]
mov dword [0x100a5118], eax
mov dword [0x100a511c], ecx
movsx edx, word [0x100a515c]
movzx eax, word [0x100a510c]
sub edx, eax
mov dword [0x100a5144], edx
movsx eax, byte [0x100a5026]
cdq
mov ecx, eax
mov esi, edx
add ecx, dword [ebp - 0x40]
adc esi, dword [ebp - 0x3c]
movsx eax, byte [0x100a5026]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073670
mov byte [0x100a5026], al
movzx edx, word [ebp - 0xc]
imul edx, dword [ebp - 0x30]
movzx eax, word [ebp - 0xc]
sub eax, edx
mov word [ebp - 0xc], ax
mov ecx, dword [ebp - 0x14c]
add ecx, 0x5be
mov dword [ebp - 0x2c0], ecx
cmp dword [0x100a50f8], 0
jne 0x1002f9f9
mov dword [ebp - 0x1cc], 1
jmp 0x1002fa03
mov dword [ebp - 0x1cc], 0
movsx edx, word [0x100a5138]
mov eax, dword [ebp - 0x1cc]
sub eax, edx
cdq
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov eax, dword [0x100a5144]
xor ecx, ecx
push ecx
push eax
mov edx, dword [0x100a50e4]
push edx
mov eax, dword [0x100a50e0]
push eax
call fcn.10073670
or eax, dword [0x100a50e0]
or edx, dword [0x100a50e4]
mov dword [0x100a50e0], eax
mov dword [0x100a50e4], edx
mov byte [ebp - 5], 0x1c
movzx eax, byte [ebp - 1]
cdq
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
mov ecx, dword [ebp - 0x14c]
add ecx, 0x5c2
mov dword [ebp - 0xd54], ecx
mov edx, dword [ebp - 0x40]
or edx, dword [ebp - 0x3c]
je 0x1002fbfa
movzx eax, word [ebp - 0xc]
cmp eax, dword [ebp - 0x30]
jb 0x1002fa99
call dword [sym.imp.USER32.dll_GetDialogBaseUnits]
xor ecx, ecx
mov dword [0x100a5110], eax
mov dword [0x100a5114], ecx
jmp 0x1002fbfa
cmp dword [ebp - 0x2c], 0
jne 0x1002fabf
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x7b4], edx
mov dword [ebp - 0x7b0], eax
mov ecx, dword [ebp - 0x7b4]
or ecx, dword [ebp - 0x7b0]
jne 0x1002faee
movsx eax, word [0x100a5140]
cdq
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
push esi
push ecx
push edx
push eax
call fcn.10073670
mov word [0x100a5140], ax
mov dl, byte [0x100a5bfc]
mov byte [ebp - 5], dl
mov byte [ebp - 2], 2
jmp 0x1002fbfa
movzx eax, word [ebp - 0x14]
test eax, eax
jne 0x1002fb02
mov dword [ebp - 0x1d0], 1
jmp 0x1002fb0c
mov dword [ebp - 0x1d0], 0
movzx ecx, word [0x100a510c]
cmp ecx, dword [ebp - 0x1d0]
je 0x1002fbfa
mov edx, dword [0x100a5118]
mov eax, dword [0x100a511c]
push 0
push 0xca00
push eax
push edx
call fcn.10073670
mov ecx, eax
movzx eax, byte [str._NgcSignWithUserIdK]
cdq
add eax, ecx
mov byte [str._NgcSignWithUserIdK], al
mov edx, dword [0x100a5bfc]
mov dword [0x100a5144], edx
movzx eax, byte [ebp - 2]
sub eax, 0x185020d3
mov word [ebp - 0xc], ax
mov cl, byte [ebp - 6]
add cl, 1
mov byte [ebp - 6], cl
movzx eax, byte [ebp - 5]
cdq
mov ecx, dword [0x100a50f0]
mov esi, dword [0x100a50f4]
push esi
push ecx
push edx
push eax
call fcn.10073670
mov byte [ebp - 5], al
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov ecx, dword [0x100a5124]
add edx, dword [0x100a5120]
adc eax, ecx
mov dword [ebp - 0x7bc], edx
mov dword [ebp - 0x7b8], eax
mov edx, dword [ebp - 0x7bc]
or edx, dword [ebp - 0x7b8]
jne 0x1002fbca
xor eax, eax
mov dword [ebp - 0x7c4], 1
mov dword [ebp - 0x7c0], eax
jmp 0x1002fbd5
xorps xmm0, xmm0
movlpd qword [ebp - 0x7c4], xmm0
movzx eax, word [ebp - 0x10]
not eax
cdq
push 0x58a6c
push 0x19cebdf2
push edx
push eax
call fcn.10073670
xor eax, dword [ebp - 0x7c4]
add eax, dword [ebp - 0x48]
mov word [ebp - 0xc], ax
cmp dword [0x100a5108], 0
je 0x1002fc4c
movzx eax, byte [0x100a503b]
cdq
push 0xfaa5a
push 0xf0df2f8d
push edx
push eax
call fcn.10073670
mov byte [0x100a504b], al
imul ecx, dword [0x100a50e8], 0xf8
add ecx, dword [0x100a50f8]
mov dword [0x100a50f8], ecx
movzx eax, byte [ebp - 5]
add eax, 0x983c
cdq
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
jmp 0x1002fde8
mov edx, dword [ebp - 0x40]
or edx, dword [ebp - 0x3c]
je 0x1002fd37
movzx eax, word [ebp - 0x10]
cdq
mov ecx, eax
mov esi, edx
movzx eax, word [ebp - 0x18]
xor eax, 0xffffff74
cdq
mov edi, eax
mov ebx, edx
movzx eax, word [ebp - 0x10]
cdq
mov dword [ebp - 0x6b8], esi
mov esi, dword [0x100a511c]
add eax, dword [0x100a5118]
adc edx, esi
sub edi, eax
sbb ebx, edx
sub ecx, edi
mov esi, dword [ebp - 0x6b8]
sbb esi, ebx
mov dword [ebp - 0x7cc], ecx
mov dword [ebp - 0x7c8], esi
mov edx, dword [ebp - 0x7cc]
or edx, dword [ebp - 0x7c8]
jne 0x1002fcc4
xor eax, eax
mov dword [ebp - 0x608], 1
mov dword [ebp - 0x604], eax
jmp 0x1002fccf
xorps xmm0, xmm0
movlpd qword [ebp - 0x608], xmm0
mov ecx, dword [ebp - 0x608]
mov edx, dword [ebp - 0x604]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], edx
xor eax, eax
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
add ecx, dword [0x100a5158]
adc edx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], edx
movzx eax, byte [ebp - 4]
add eax, 0x8053
mov byte [ebp - 3], al
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov eax, dword [0x100a5118]
mov esi, dword [0x100a511c]
push esi
push eax
push edx
push ecx
call fcn.10073670
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
push edx
push eax
push esi
push ecx
call fcn.10073670
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
jmp 0x1002fde8
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
not ecx
not esi
mov eax, dword [0x100a50e8]
cdq
mov dword [ebp - 0x7d4], ecx
mov dword [ebp - 0x7d0], esi
mov dword [ebp - 0x7dc], eax
mov dword [ebp - 0x7d8], edx
mov edx, dword [ebp - 0x7d0]
cmp edx, dword [ebp - 0x7d8]
jl 0x1002fde8
jg 0x1002fd7d
mov eax, dword [ebp - 0x7d4]
cmp eax, dword [ebp - 0x7dc]
jb 0x1002fde8
movzx ecx, word [ebp - 0x14]
test ecx, ecx
jne 0x1002fd99
xor edx, edx
mov dword [ebp - 0x7e4], 1
mov dword [ebp - 0x7e0], edx
jmp 0x1002fda4
xorps xmm0, xmm0
movlpd qword [ebp - 0x7e4], xmm0
movsx eax, byte [0x100a5026]
cdq
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0xd58], edx
mov edx, dword [ebp - 0x7e4]
sub edx, ecx
xor eax, edx
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x4c]
sub eax, 0x4cb091d8
xor ecx, ecx
mov dword [0x100a5100], eax
mov dword [0x100a5104], ecx
mov dx, word [0x100a5bfc]
mov word [0x100a510c], dx
movzx eax, word [0x100a5130]
push eax
call dword [sym.imp.USER32.dll_GetParent]
mov word [ebp - 0x14], ax
movzx ecx, word [ebp - 0x14]
test ecx, ecx
je 0x1002fef9
mov edx, dword [0x100a5bfc]
xor eax, eax
mov dword [0x100a50e0], edx
mov dword [0x100a50e4], eax
movzx ecx, byte [ebp - 2]
sar ecx, 4
mov byte [ebp - 7], cl
movsx eax, byte [0x100a5026]
cdq
sub eax, 0xa877564e
mov dword [0x100a50e8], eax
mov edx, 2
imul eax, edx, 0x2c2
mov cx, word [eax + 0x100fd620]
mov word [ebp - 0x10], cx
mov byte [ebp - 4], 8
movzx edx, byte [str._NgcSignWithUserIdK]
imul edx, dword [ebp - 0x44]
test edx, edx
jne 0x1002fe72
xor eax, eax
mov dword [ebp - 0x610], 1
mov dword [ebp - 0x60c], eax
jmp 0x1002fe7d
xorps xmm0, xmm0
movlpd qword [ebp - 0x610], xmm0
movzx ecx, byte [ebp - 1]
test ecx, ecx
jne 0x1002fe99
xor edx, edx
mov dword [ebp - 0x7ec], 1
mov dword [ebp - 0x7e8], edx
jmp 0x1002fea4
xorps xmm0, xmm0
movlpd qword [ebp - 0x7ec], xmm0
mov eax, dword [ebp - 0x48]
xor ecx, ecx
sub eax, 0x366c4302
sbb ecx, 0xdf172
push ecx
push eax
mov edx, dword [ebp - 0x60c]
push edx
mov eax, dword [ebp - 0x610]
push eax
call fcn.10073670
mov ecx, eax
mov eax, dword [0x100a50f8]
not eax
cdq
mov edx, dword [0x100a5100]
mov esi, dword [0x100a5104]
mov dword [ebp - 0xd5c], esi
xor edx, dword [ebp - 0x7ec]
sub eax, edx
not eax
add ecx, eax
mov byte [ebp - 3], cl
jmp 0x100300ff
movzx eax, word [ebp - 0xc]
test eax, eax
je 0x1002ff36
movzx eax, word [0x100a510c]
cdq
add eax, 0x90f757af
mov dword [ebp - 0x2c], eax
mov ecx, dword [0x100a5108]
mov edx, dword [0x100a5100]
mov eax, dword [0x100a5104]
mov dword [ebp - 0xd60], eax
add ecx, edx
mov word [0x100a5128], cx
jmp 0x100300ff
movsx ecx, word [0x100a5134]
not ecx
test ecx, ecx
jne 0x1002ff50
mov edx, 0xa4afa655
test edx, edx
je 0x10030026
movsx eax, word [0x100a50dc]
test eax, eax
jne 0x1002ff67
mov dword [ebp - 0x1d4], 1
jmp 0x1002ff71
mov dword [ebp - 0x1d4], 0
movzx ecx, word [0x100a510c]
imul eax, ecx, 0x93
movzx edx, byte [ebp - 2]
xor eax, edx
cdq
mov esi, eax
mov edi, edx
imul eax, dword [ebp - 0x1d4], 0xffffde38
cdq
mov ebx, eax
mov eax, edx
movsx ecx, word [0x100a5138]
mov dword [ebp - 0x6bc], eax
mov eax, ecx
cdq
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x6c0], esi
mov esi, dword [ebp - 0x1c]
push edx
push eax
push esi
push ecx
call fcn.10073670
add ebx, eax
mov esi, dword [ebp - 0x6bc]
adc esi, edx
push esi
push ebx
push edi
mov esi, dword [ebp - 0x6c0]
push esi
call fcn.10073670
mov word [0x100a5130], ax
movzx edx, word [0x100a510c]
movzx eax, byte [0x100a503b]
xor edx, eax
mov word [0x100a510c], dx
xor ecx, ecx
mov edx, dword [0x100a5120]
mov eax, dword [0x100a5124]
xor edx, dword [ebp - 0x44]
xor eax, ecx
mov ecx, dword [0x100a5120]
mov esi, dword [0x100a5124]
sub ecx, edx
sbb esi, eax
mov dword [0x100a5120], ecx
mov dword [0x100a5124], esi
jmp 0x100300ff
movzx edx, word [ebp - 0xc]
test edx, edx
je 0x100300ff
movzx eax, word [0x100a5128]
cdq
mov ecx, eax
mov edx, dword [0x100a50f0]
mov eax, dword [0x100a50f4]
mov dword [ebp - 0xd64], eax
add ecx, edx
movzx eax, word [0x100a5128]
cdq
add eax, ecx
mov word [0x100a5128], ax
movsx ecx, byte [0x100a504b]
movsx edx, word [0x100a50fc]
imul ecx, edx
not ecx
xor ecx, 0xf0
mov byte [ebp - 4], cl
movsx eax, byte [ebp - 3]
imul ecx, eax, 0x3d
mov dword [0x100a50e8], ecx
mov edx, dword [ebp - 0x2c]
sub edx, 0x2a89
mov word [0x100a5130], dx
imul eax, dword [0x100a50f8], 0xc4bd
movzx ecx, byte [ebp - 5]
sub ecx, eax
mov byte [ebp - 5], cl
mov edx, dword [0x100a50f0]
mov eax, dword [0x100a50f4]
mov dword [ebp - 0x7f4], edx
mov dword [ebp - 0x7f0], eax
mov ecx, dword [ebp - 0x7f4]
or ecx, dword [ebp - 0x7f0]
je 0x100300e4
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x618], edx
mov dword [ebp - 0x614], eax
jmp 0x100300f6
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x618], ecx
mov dword [ebp - 0x614], edx
mov eax, dword [ebp - 0x618]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x150], 0x3a5
jmp 0x1003011a
mov ecx, dword [ebp - 0x150]
sub ecx, 1
mov dword [ebp - 0x150], ecx
cmp dword [ebp - 0x150], 0
jle 0x10030239
movzx edx, word [0x100a5148]
push edx
call dword [sym.imp.USER32.dll_GetTopWindow]
mov word [0x100a50dc], ax
movsx eax, word [0x100a50dc]
test eax, eax
je 0x100301b3
movsx eax, word [0x100a50fc]
cdq
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
sub ecx, eax
sbb esi, edx
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
add edx, ecx
adc eax, esi
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], eax
movsx ecx, word [0x100a50dc]
sub ecx, 0xcc
mov dword [ebp - 0x30], ecx
mov eax, dword [0x100a50e0]
mov edx, dword [0x100a50e4]
mov cl, 5
call fcn.100736d0
mov byte [0x100a503b], al
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
push 0x993e4
push 0x3fc2b0c5
push eax
push edx
call fcn.10073670
mov dword [0x100a5150], eax
mov dword [0x100a5154], edx
jmp 0x1003022b
movzx ecx, word [0x100a5130]
movzx edx, byte [ebp - 1]
and ecx, edx
movzx eax, word [0x100a5130]
sub eax, ecx
mov word [0x100a5130], ax
movzx eax, word [0x100a5128]
cdq
mov ecx, eax
sub ecx, dword [0x100a5150]
movzx eax, word [0x100a5128]
cdq
sub eax, ecx
mov word [0x100a5128], ax
cmp dword [0x100a50f8], 0
je 0x10030207
movsx edx, word [0x100a5140]
mov dword [ebp - 0x1d8], edx
jmp 0x10030211
movzx eax, word [ebp - 0x10]
mov dword [ebp - 0x1d8], eax
mov cx, word [ebp - 0x1d8]
mov word [0x100a510c], cx
mov dx, word [ebp - 0x10]
add dx, 1
mov word [ebp - 0x10], dx
mov eax, dword [ebp - 0x44]
add eax, 1
mov dword [ebp - 0x44], eax
jmp 0x1003010b
mov cx, word [0x100a512c]
add cx, 1
mov word [0x100a512c], cx
mov edx, 0x31
mov word [ebp - 0x10], dx
movzx eax, byte [0x100a503b]
add eax, 0xa4
mov ecx, dword [0x100a50e8]
sub ecx, eax
mov dword [0x100a50e8], ecx
movsx edx, word [0x100a5138]
sub edx, 0x9e
mov byte [ebp - 6], dl
movsx eax, byte [ebp - 3]
movzx ecx, byte [ebp - 4]
sub eax, ecx
mov byte [ebp - 3], al
mov edx, dword [ebp - 0x30]
sub edx, 0xd9191816
mov byte [0x100a5026], dl
movzx eax, word [ebp - 0xc]
add eax, dword [ebp - 0x4c]
movzx ecx, word [ebp - 0xc]
sub ecx, eax
mov word [ebp - 0xc], cx
mov edx, 0xac56a
mov dword [0x100a5100], 0xb05179d
mov dword [0x100a5104], edx
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xd68], ecx
sub eax, 0xe
mov byte [0x100a504b], al
mov edx, dword [ebp - 0x30]
xor eax, eax
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov dword [ebp - 0x7fc], edx
mov dword [ebp - 0x7f8], eax
mov dword [ebp - 0x804], ecx
mov dword [ebp - 0x800], esi
mov edx, dword [ebp - 0x7fc]
cmp edx, dword [ebp - 0x804]
jne 0x10030360
mov eax, dword [ebp - 0x7f8]
cmp eax, dword [ebp - 0x800]
jne 0x10030360
movzx ecx, word [ebp - 0x10]
not ecx
mov dword [0x100a5158], ecx
mov dx, word [ebp - 0xc]
mov word [ebp - 0x18], dx
movzx eax, byte [0x100a503b]
movsx ecx, word [0x100a513c]
add eax, ecx
mov byte [0x100a503b], al
mov dx, word [0x100a5130]
mov word [ebp - 0x14], dx
movzx eax, word [ebp - 0x10]
add eax, 0x263e
mov byte [0x100a5026], al
mov ecx, dword [0x100a50e0]
not ecx
mov byte [ebp - 6], cl
xor edx, edx
mov byte [ebp - 0x58], dl
lea eax, [ebp - 0xfcc]
push eax
lea ecx, [ebp - 0x58]
call fcn.10002ac0
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0xdc], 0
jmp 0x10030395
mov ecx, dword [ebp - 0xdc]
add ecx, 1
mov dword [ebp - 0xdc], ecx
cmp dword [ebp - 0xdc], 0xe
jae 0x100303f7
mov edx, dword [ebp - 0xdc]
mov eax, dword [ebp - 0xe0]
lea ecx, [eax + edx*2 + 2]
mov dword [ebp - 0x6c4], ecx
mov edx, dword [ebp - 0x6c4]
movzx eax, word [edx]
mov ecx, dword [ebp - 0xe0]
movsx edx, byte [ecx]
xor eax, edx
mov word [ebp - 0x1a2], ax
mov eax, dword [ebp - 0xdc]
mov ecx, dword [ebp - 0xe0]
lea edx, [ecx + eax*2 + 2]
mov dword [ebp - 0x6c8], edx
mov eax, dword [ebp - 0x6c8]
mov cx, word [ebp - 0x1a2]
mov word [eax], cx
jmp 0x10030386
mov edx, 0xe
shl edx, 1
mov eax, dword [ebp - 0xe0]
lea ecx, [eax + edx + 2]
mov dword [ebp - 0x6cc], ecx
xor edx, edx
mov eax, dword [ebp - 0x6cc]
mov word [eax], dx
mov ecx, dword [ebp - 0xe0]
add ecx, 2
mov dword [ebp - 0x6d0], ecx
push 0x410
lea edx, [ebp - 0x1540]
push edx
mov eax, dword [ebp - 0x6d0]
push eax
push 0
push 0
call fcn.10001350
call eax
xor ecx, ecx
mov byte [ebp - 0x57], cl
lea edx, [ebp - 0x10b2]
push edx
lea ecx, [ebp - 0x57]
call fcn.100030e0
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], 0
jmp 0x1003046f
mov eax, dword [ebp - 0x60]
add eax, 1
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0x17
jae 0x100304bf
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x64]
lea eax, [edx + ecx*2 + 2]
mov dword [ebp - 0x6d4], eax
mov ecx, dword [ebp - 0x6d4]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x64]
movsx ecx, byte [eax]
xor edx, ecx
mov word [ebp - 0x114], dx
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x64]
lea ecx, [eax + edx*2 + 2]
mov dword [ebp - 0x6d8], ecx
mov edx, dword [ebp - 0x6d8]
mov ax, word [ebp - 0x114]
mov word [edx], ax
jmp 0x10030466
mov ecx, 0x17
shl ecx, 1
mov edx, dword [ebp - 0x64]
lea eax, [edx + ecx + 2]
mov dword [ebp - 0x6dc], eax
xor ecx, ecx
mov edx, dword [ebp - 0x6dc]
mov word [edx], cx
mov eax, dword [ebp - 0x64]
add eax, 2
mov dword [ebp - 0x6e0], eax
push 0x410
lea ecx, [ebp - 0x1d60]
push ecx
mov edx, dword [ebp - 0x6e0]
push edx
push 0
push 0
call fcn.10001350
call eax
xor eax, eax
mov byte [ebp - 0x56], al
lea ecx, [ebp - 0x1080]
push ecx
lea ecx, [ebp - 0x56]
call fcn.10003860
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], 0
jmp 0x10030531
mov edx, dword [ebp - 0x68]
add edx, 1
mov dword [ebp - 0x68], edx
cmp dword [ebp - 0x68], 0x16
jae 0x10030581
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x6c]
lea edx, [ecx + eax*2 + 2]
mov dword [ebp - 0x6e4], edx
mov eax, dword [ebp - 0x6e4]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x6c]
movsx eax, byte [edx]
xor ecx, eax
mov word [ebp - 0x116], cx
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x6c]
lea eax, [edx + ecx*2 + 2]
mov dword [ebp - 0x6e8], eax
mov ecx, dword [ebp - 0x6e8]
mov dx, word [ebp - 0x116]
mov word [ecx], dx
jmp 0x10030528
mov eax, 0x16
shl eax, 1
mov ecx, dword [ebp - 0x6c]
lea edx, [ecx + eax + 2]
mov dword [ebp - 0x6ec], edx
xor eax, eax
mov ecx, dword [ebp - 0x6ec]
mov word [ecx], ax
mov edx, dword [ebp - 0x6c]
add edx, 2
mov dword [ebp - 0x6f0], edx
push 0x410
lea eax, [ebp - 0x2170]
push eax
mov ecx, dword [ebp - 0x6f0]
push ecx
push 0
push 0
call fcn.10001350
call eax
xor edx, edx
mov byte [ebp - 0x55], dl
lea eax, [ebp - 0xff8]
push eax
lea ecx, [ebp - 0x55]
call fcn.10003de0
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], 0
jmp 0x100305f3
mov ecx, dword [ebp - 0x70]
add ecx, 1
mov dword [ebp - 0x70], ecx
cmp dword [ebp - 0x70], 0x14
jae 0x10030643
mov edx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x74]
lea ecx, [eax + edx*2 + 2]
mov dword [ebp - 0x6f4], ecx
mov edx, dword [ebp - 0x6f4]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x74]
movsx edx, byte [ecx]
xor eax, edx
mov word [ebp - 0x118], ax
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x74]
lea edx, [ecx + eax*2 + 2]
mov dword [ebp - 0x6f8], edx
mov eax, dword [ebp - 0x6f8]
mov cx, word [ebp - 0x118]
mov word [eax], cx
jmp 0x100305ea
mov edx, 0x14
shl edx, 1
mov eax, dword [ebp - 0x74]
lea ecx, [eax + edx + 2]
mov dword [ebp - 0x6fc], ecx
xor edx, edx
mov eax, dword [ebp - 0x6fc]
mov word [eax], dx
mov ecx, dword [ebp - 0x74]
add ecx, 2
mov dword [ebp - 0x700], ecx
push 0x410
lea edx, [ebp - 0x1950]
push edx
mov eax, dword [ebp - 0x700]
push eax
push 0
push 0
call fcn.10001350
call eax
xor ecx, ecx
mov byte [ebp - 0x54], cl
lea edx, [ebp - 0xfac]
push edx
lea ecx, [ebp - 0x54]
call fcn.10004180
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], 0
jmp 0x100306b5
mov eax, dword [ebp - 0x78]
add eax, 1
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0xa
jae 0x10030705
mov ecx, dword [ebp - 0x78]
mov edx, dword [ebp - 0x7c]
lea eax, [edx + ecx*2 + 2]
mov dword [ebp - 0x704], eax
mov ecx, dword [ebp - 0x704]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x7c]
movsx ecx, byte [eax]
xor edx, ecx
mov word [ebp - 0x130], dx
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x7c]
lea ecx, [eax + edx*2 + 2]
mov dword [ebp - 0x708], ecx
mov edx, dword [ebp - 0x708]
mov ax, word [ebp - 0x130]
mov word [edx], ax
jmp 0x100306ac
mov ecx, 0xa
shl ecx, 1
mov edx, dword [ebp - 0x7c]
lea eax, [edx + ecx + 2]
mov dword [ebp - 0x70c], eax
xor ecx, ecx
mov edx, dword [ebp - 0x70c]
mov word [edx], cx
mov eax, dword [ebp - 0x7c]
add eax, 2
mov dword [ebp - 0x710], eax
mov ecx, dword [ebp - 0x710]
push ecx
lea edx, [ebp - 0x1540]
push edx
push 0
push 0
call fcn.10001320
call eax
lea eax, [ebp - 0x1d60]
push eax
lea ecx, [ebp - 0x1540]
push ecx
push 0
push 0
call fcn.10001320
call eax
xor edx, edx
mov byte [ebp - 0x10b], dl
mov byte [ebp - 0xea], 0x5e
xor eax, eax
mov byte [ebp - 0xe9], al
mov ecx, 0x66
mov word [ebp - 0xe8], cx
mov edx, 0x68
mov word [ebp - 0xe6], dx
mov eax, 0x73
mov word [ebp - 0xe4], ax
xor ecx, ecx
mov word [ebp - 0xe2], cx
mov dword [ebp - 0x80], 0
jmp 0x100307b8
mov edx, dword [ebp - 0x80]
add edx, 1
mov dword [ebp - 0x80], edx
cmp dword [ebp - 0x80], 3
jae 0x10030809
mov eax, dword [ebp - 0x80]
lea ecx, [ebp + eax*2 - 0xe8]
mov dword [ebp - 0x714], ecx
mov edx, dword [ebp - 0x714]
movzx eax, word [edx]
movsx ecx, byte [ebp - 0xea]
xor eax, ecx
mov word [ebp - 0x11a], ax
mov edx, dword [ebp - 0x80]
lea eax, [ebp + edx*2 - 0xe8]
mov dword [ebp - 0x718], eax
mov ecx, dword [ebp - 0x718]
mov dx, word [ebp - 0x11a]
mov word [ecx], dx
jmp 0x100307af
mov eax, 3
shl eax, 1
lea ecx, [ebp + eax - 0xe8]
mov dword [ebp - 0x71c], ecx
xor edx, edx
mov eax, dword [ebp - 0x71c]
mov word [eax], dx
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0x720], ecx
mov edx, dword [ebp - 0x720]
push edx
lea eax, [ebp - 0x3174]
push eax
push 0
push 0
call fcn.10001470
call eax
lea ecx, [ebp - 0x2170]
push ecx
lea edx, [ebp - 0x3174]
push edx
push 0
push 0
call fcn.10001320
call eax
xor eax, eax
mov byte [ebp - 0x10c], al
mov byte [ebp - 0x1ba], 0x1d
xor ecx, ecx
mov byte [ebp - 0x1b9], cl
mov edx, 0x30
mov word [ebp - 0x1b8], dx
mov eax, 0x54
mov word [ebp - 0x1b6], ax
mov ecx, 0x59
mov word [ebp - 0x1b4], cx
mov edx, 0x30
mov word [ebp - 0x1b2], dx
xor eax, eax
mov word [ebp - 0x1b0], ax
mov dword [ebp - 0x84], 0
jmp 0x100308d1
mov ecx, dword [ebp - 0x84]
add ecx, 1
mov dword [ebp - 0x84], ecx
cmp dword [ebp - 0x84], 4
jae 0x1003092b
mov edx, dword [ebp - 0x84]
lea eax, [ebp + edx*2 - 0x1b8]
mov dword [ebp - 0x724], eax
mov ecx, dword [ebp - 0x724]
movzx edx, word [ecx]
movsx eax, byte [ebp - 0x1ba]
xor edx, eax
mov word [ebp - 0x11c], dx
mov ecx, dword [ebp - 0x84]
lea edx, [ebp + ecx*2 - 0x1b8]
mov dword [ebp - 0x728], edx
mov eax, dword [ebp - 0x728]
mov cx, word [ebp - 0x11c]
mov word [eax], cx
jmp 0x100308c2
mov edx, 4
shl edx, 1
lea eax, [ebp + edx - 0x1b8]
mov dword [ebp - 0x72c], eax
xor ecx, ecx
mov edx, dword [ebp - 0x72c]
mov word [edx], cx
lea eax, [ebp - 0x1b8]
mov dword [ebp - 0x730], eax
mov ecx, dword [ebp - 0x730]
push ecx
lea edx, [ebp - 0x3174]
push edx
push 0
push 0
call fcn.10001320
call eax
lea eax, [ebp - 0x1950]
push eax
lea ecx, [ebp - 0x3174]
push ecx
push 0
push 0
call fcn.10001320
call eax
mov edx, 0x7aed
mov word [0x100a512c], dx
mov eax, dword [str.The_redirected_req]
mov dword [ebp - 0xcb0], eax
mov ecx, dword [0x10086444]
mov dword [ebp - 0xcac], ecx
mov edx, dword [0x10086448]
mov dword [ebp - 0xca8], edx
mov eax, dword [0x1008644c]
mov dword [ebp - 0xca4], eax
mov cx, word [0x10086450]
mov word [ebp - 0xca0], cx
mov dl, byte [0x10086452]
mov byte [ebp - 0xc9e], dl
lea eax, [ebp - 0xcb0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov byte [ebp - 1], al
movzx eax, word [0x100a512c]
cdq
mov ecx, eax
mov esi, edx
movzx eax, word [0x100a512c]
cdq
mov edi, dword [ebp - 0x1c]
add eax, dword [ebp - 0x20]
adc edx, edi
mov dword [ebp - 0x80c], ecx
mov dword [ebp - 0x808], esi
mov dword [ebp - 0x814], eax
mov dword [ebp - 0x810], edx
mov edx, dword [ebp - 0x80c]
cmp edx, dword [ebp - 0x814]
jne 0x10030c91
mov eax, dword [ebp - 0x808]
cmp eax, dword [ebp - 0x810]
jne 0x10030c91
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0xd6c], edx
add ecx, 0xcdcae7fb
mov word [0x100a5140], cx
mov eax, dword [0x100a5120]
mov ecx, dword [0x100a5124]
mov dword [ebp - 0xd70], ecx
mov byte [str._NgcSignWithUserIdK], al
movsx eax, word [0x100a5140]
cdq
add eax, 0x457b6c95
mov word [ebp - 0x10], ax
cmp dword [0x100a50e8], 0
jne 0x10030aa1
xor edx, edx
mov dword [ebp - 0x81c], 1
mov dword [ebp - 0x818], edx
jmp 0x10030aac
xorps xmm0, xmm0
movlpd qword [ebp - 0x81c], xmm0
mov eax, dword [0x100a5158]
not eax
mov ecx, eax
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xd74], eax
sub ecx, edx
not ecx
movzx eax, byte [ebp - 5]
add eax, 0x88
cdq
or ecx, eax
not ecx
mov edx, dword [ebp - 0x81c]
sub edx, ecx
mov byte [ebp - 5], dl
imul eax, dword [ebp - 0x44], 0x449ccb66
mov dword [ebp - 0x30], eax
movzx eax, word [ebp - 0xc]
cdq
and eax, dword [0x100a5150]
and edx, dword [0x100a5154]
mov ecx, dword [0x100a5150]
sub ecx, eax
mov eax, dword [0x100a5154]
sbb eax, edx
mov dword [0x100a5150], ecx
mov dword [0x100a5154], eax
mov ecx, dword [0x100a50e8]
mov dword [ebp - 0x4c], ecx
movsx eax, word [0x100a5140]
cdq
sub eax, 0x94a507a8
mov dword [0x100a5144], eax
mov edx, dword [0x100a5118]
mov eax, dword [0x100a511c]
mov dword [ebp - 0x824], edx
mov dword [ebp - 0x820], eax
mov ecx, dword [ebp - 0x824]
or ecx, dword [ebp - 0x820]
je 0x10030b62
movsx edx, word [0x100a513c]
mov dword [ebp - 0x1dc], edx
jmp 0x10030b6c
movzx eax, word [ebp - 0x14]
mov dword [ebp - 0x1dc], eax
mov cl, byte [ebp - 0x1dc]
mov byte [0x100a5026], cl
mov dl, byte [ebp - 0x40]
mov byte [str._NgcSignWithUserIdK], dl
mov eax, dword [0x100a5144]
xor ecx, ecx
mov edx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
add edx, 0x11d27aed
adc esi, 0x722ed
mov dword [ebp - 0x82c], eax
mov dword [ebp - 0x828], ecx
mov dword [ebp - 0x834], edx
mov dword [ebp - 0x830], esi
mov eax, dword [ebp - 0x82c]
cmp eax, dword [ebp - 0x834]
jne 0x10030c91
mov ecx, dword [ebp - 0x828]
cmp ecx, dword [ebp - 0x830]
jne 0x10030c91
movsx edx, word [0x100a5140]
imul eax, edx, 0x29
mov word [0x100a512c], ax
mov ecx, 1
imul edx, ecx, 0x17
mov al, byte [edx + 0x10277e1c]
mov byte [0x100a504b], al
xor ecx, ecx
mov dword [ebp - 0x38], 0x9bc6
mov dword [ebp - 0x34], ecx
movzx edx, byte [ebp - 2]
movzx eax, byte [ebp - 5]
xor edx, eax
movzx ecx, byte [ebp - 2]
xor ecx, edx
mov byte [ebp - 2], cl
movzx edx, word [ebp - 0xc]
sub edx, 0x6d
mov byte [ebp - 6], dl
jmp 0x10030988
xor ecx, ecx
mov edx, dword [0x100a5110]
mov eax, dword [0x100a5114]
xor edx, dword [0x100a5158]
xor eax, ecx
mov ecx, dword [0x100a5110]
mov esi, dword [0x100a5114]
sub ecx, edx
sbb esi, eax
mov dword [0x100a5110], ecx
mov dword [0x100a5114], esi
movzx eax, byte [str._NgcSignWithUserIdK]
cdq
mov ecx, eax
mov edx, dword [0x100a5120]
mov eax, dword [0x100a5124]
mov dword [ebp - 0xd78], eax
add ecx, edx
movzx eax, byte [str._NgcSignWithUserIdK]
cdq
add eax, ecx
mov byte [str._NgcSignWithUserIdK], al
movsx ecx, byte [0x100a5026]
mov edx, dword [ebp - 0x48]
add edx, ecx
mov dword [ebp - 0x48], edx
mov eax, dword [0x100a5100]
mov ecx, dword [0x100a5104]
mov dword [ebp - 0xd7c], ecx
sub eax, 0xb45a3f77
mov word [0x100a5128], ax
mov edx, dword [0x100a5150]
or edx, dword [0x100a5154]
jne 0x10030d3b
xor eax, eax
mov dword [ebp - 0x83c], 1
mov dword [ebp - 0x838], eax
jmp 0x10030d46
xorps xmm0, xmm0
movlpd qword [ebp - 0x83c], xmm0
movzx eax, byte [ebp - 4]
cdq
mov ecx, dword [0x100a5100]
mov edx, dword [0x100a5104]
mov dword [ebp - 0xd80], edx
sub ecx, eax
add ecx, dword [ebp - 0x83c]
mov word [ebp - 0x10], cx
mov eax, dword [ebp - 0x734]
add eax, 0x34e
mov ecx, dword [ebp - 0x738]
imul ecx, eax
cmp ecx, 0x13714
je 0x1003a01c
movsx eax, word [0x100a513c]
cdq
mov ecx, dword [0x100a50f0]
mov edx, dword [0x100a50f4]
mov dword [ebp - 0xd84], edx
add ecx, eax
not ecx
movzx eax, word [0x100a5130]
cdq
xor ecx, eax
mov byte [ebp - 2], cl
movzx eax, byte [ebp - 4]
movzx ecx, byte [ebp - 7]
imul eax, ecx
cdq
mov dword [0x100a50f0], eax
mov dword [0x100a50f4], edx
mov byte [ebp - 1], 0x34
movsx edx, byte [0x100a504b]
sub edx, 0x64e96d53
mov word [0x100a50fc], dx
movzx eax, byte [ebp - 7]
imul ecx, eax, 0
not ecx
mov word [0x100a510c], cx
mov edx, dword [ebp - 0x4c]
sar edx, 7
mov byte [ebp - 6], dl
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
movsx eax, word [0x100a5140]
cdq
mov dword [ebp - 0x844], ecx
mov dword [ebp - 0x840], esi
mov dword [ebp - 0x84c], eax
mov dword [ebp - 0x848], edx
mov edx, dword [ebp - 0x844]
cmp edx, dword [ebp - 0x84c]
jne 0x10030e3e
mov eax, dword [ebp - 0x840]
cmp eax, dword [ebp - 0x848]
je 0x10030e4a
mov dword [ebp - 0x1e4], 1
jmp 0x10030e54
mov dword [ebp - 0x1e4], 0
movzx ecx, word [0x100a512c]
test ecx, ecx
je 0x10030e8b
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x854], edx
mov dword [ebp - 0x850], eax
mov ecx, dword [ebp - 0x854]
or ecx, dword [ebp - 0x850]
jne 0x10030e8b
mov dword [ebp - 0x1e8], 0
jmp 0x10030e95
mov dword [ebp - 0x1e8], 1
mov edx, dword [ebp - 0x1e4]
cmp edx, dword [ebp - 0x1e8]
jl 0x10030eaf
mov dword [ebp - 0x1f8], 1
jmp 0x10030eb9
mov dword [ebp - 0x1f8], 0
cmp dword [0x100a5108], 0
jne 0x10030ece
mov dword [ebp - 0x1ec], 1
jmp 0x10030ed8
mov dword [ebp - 0x1ec], 0
movsx eax, byte [0x100a5026]
cmp dword [ebp - 0x1ec], eax
jne 0x10030ef3
mov dword [ebp - 0x1f0], 1
jmp 0x10030efd
mov dword [ebp - 0x1f0], 0
movsx ecx, word [0x100a50ec]
cmp ecx, 0xcb3bdc9a
jne 0x10030f18
mov dword [ebp - 0x1f4], 1
jmp 0x10030f22
mov dword [ebp - 0x1f4], 0
mov edx, dword [ebp - 0x1f0]
cmp edx, dword [ebp - 0x1f4]
je 0x10030f3c
mov dword [ebp - 0x1fc], 1
jmp 0x10030f46
mov dword [ebp - 0x1fc], 0
mov eax, dword [ebp - 0x1f8]
or eax, dword [ebp - 0x1fc]
je 0x10031294
mov dword [ebp - 0x154], 0x1a31
mov dword [ebp - 0x48], 2
mov ecx, dword [0x100a5154]
push ecx
mov edx, dword [0x100a5150]
push edx
mov eax, dword [ebp - 0x3c]
push eax
mov ecx, dword [ebp - 0x40]
push ecx
call fcn.10073670
mov ecx, dword [ebp - 0x40]
sub ecx, eax
mov eax, dword [ebp - 0x3c]
sbb eax, edx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x3c], eax
movzx eax, word [0x100a5148]
cdq
mov dword [0x100a5118], eax
mov dword [0x100a511c], edx
movzx eax, byte [str._NgcSignWithUserIdK]
cdq
mov ecx, dword [0x100a5120]
mov edx, dword [0x100a5124]
mov dword [ebp - 0xd88], edx
add eax, ecx
mov byte [ebp - 1], al
cmp dword [ebp - 0x154], 0x19a8
jle 0x1003128f
movzx eax, word [ebp - 0x18]
cmp eax, 0x94
jle 0x10030ff6
movzx ecx, byte [ebp - 4]
cmp ecx, dword [ebp - 0x30]
ja 0x10030ff6
mov dword [ebp - 0x204], 0
jmp 0x10031000
mov dword [ebp - 0x204], 1
mov edx, 0x72ea
test edx, edx
je 0x1003101d
movzx eax, byte [ebp - 4]
test eax, eax
jne 0x1003101d
mov dword [ebp - 0x200], 1
jmp 0x10031027
mov dword [ebp - 0x200], 0
movzx ecx, byte [ebp - 7]
cmp dword [ebp - 0x200], ecx
jne 0x1003103f
mov dword [ebp - 0x208], 1
jmp 0x10031049
mov dword [ebp - 0x208], 0
mov edx, dword [ebp - 0x204]
cmp edx, dword [ebp - 0x208]
jge 0x100311bf
movsx eax, word [0x100a50fc]
movsx ecx, word [0x100a50ec]
cmp eax, ecx
jge 0x10031079
mov dword [ebp - 0x20c], 1
jmp 0x10031083
mov dword [ebp - 0x20c], 0
mov edx, dword [0x100a5144]
cmp dword [ebp - 0x20c], edx
jne 0x1003109d
mov dword [ebp - 0x210], 1
jmp 0x100310a7
mov dword [ebp - 0x210], 0
movzx eax, byte [str._NgcSignWithUserIdK]
add eax, dword [ebp - 0x210]
je 0x1003114f
xor ecx, ecx
mov dword [ebp - 0x38], 0xc4e6
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 0x48]
imul edx, dword [0x100a50f8]
mov eax, dword [ebp - 0x48]
sub eax, edx
mov dword [ebp - 0x48], eax
mov ecx, dword [0x100a5110]
mov edx, dword [0x100a5114]
mov dword [ebp - 0xd8c], edx
add ecx, 0x30997368
movzx eax, word [0x100a5130]
cdq
add eax, ecx
mov word [0x100a5130], ax
movsx eax, word [0x100a515c]
cdq
sub eax, 0xc4265e5a
mov word [0x100a5138], ax
movsx eax, word [0x100a50dc]
cdq
add eax, 0xa90406ac
mov word [0x100a512c], ax
mov ecx, dword [0x100a5100]
mov edx, dword [0x100a5104]
mov dword [ebp - 0xd90], edx
sub ecx, 0xa5b867c8
movzx eax, byte [0x100a503b]
cdq
sub eax, ecx
mov byte [0x100a503b], al
jmp 0x100311ba
movsx eax, word [0x100a5140]
test eax, eax
je 0x100311ba
movsx ecx, byte [ebp - 3]
movzx edx, word [ebp - 0x14]
add ecx, edx
mov byte [ebp - 3], cl
mov eax, dword [0x100a5150]
or eax, dword [0x100a5154]
je 0x1003118a
movsx eax, word [0x100a513c]
cdq
mov dword [ebp - 0x4c0], eax
mov dword [ebp - 0x4bc], edx
jmp 0x1003119c
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x4c0], ecx
mov dword [ebp - 0x4bc], edx
mov eax, dword [ebp - 0x4c0]
mov ecx, dword [ebp - 0x4bc]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x40]
and edx, 0x67
mov byte [str._NgcSignWithUserIdK], dl
jmp 0x1003127b
movsx eax, byte [ebp - 3]
test eax, eax
je 0x1003127b
movzx eax, byte [ebp - 5]
cdq
xor eax, 0x3ae5f8dd
xor edx, 0x1e967
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
mov ecx, dword [0x100a5100]
mov edx, dword [0x100a5104]
mov eax, 8
imul eax, eax, 0x540b
mov dword [eax + 0x100a5c00], ecx
mov dword [eax + 0x100a5c04], edx
mov ecx, dword [ebp - 0x2c]
xor edx, edx
mov eax, dword [0x100a5100]
mov esi, dword [0x100a5104]
push esi
push eax
push edx
push ecx
call fcn.10073670
mov ecx, dword [ebp - 0x2c]
add ecx, eax
mov dword [ebp - 0x2c], ecx
movzx edx, byte [ebp - 7]
test edx, edx
je 0x10031238
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x214], eax
jmp 0x10031245
movsx ecx, word [0x100a515c]
mov dword [ebp - 0x214], ecx
mov edx, dword [ebp - 0x214]
xor eax, eax
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], eax
movsx eax, byte [0x100a5026]
cdq
mov ecx, eax
mov esi, edx
sub ecx, dword [ebp - 0x40]
sbb esi, dword [ebp - 0x3c]
movsx eax, byte [0x100a5026]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073670
mov byte [0x100a5026], al
mov edx, dword [ebp - 0x154]
sub edx, 1
mov dword [ebp - 0x154], edx
jmp 0x10030fc6
jmp 0x100314a8
movsx eax, word [0x100a50dc]
movsx ecx, word [0x100a50dc]
cmp eax, ecx
jl 0x100312b2
mov dword [ebp - 0x218], 1
jmp 0x100312bc
mov dword [ebp - 0x218], 0
movzx edx, byte [ebp - 2]
cmp dword [ebp - 0x218], edx
jle 0x10031364
cmp dword [ebp - 0x48], 0
je 0x100312df
mov eax, dword [0x100a5158]
mov dword [ebp - 0x21c], eax
jmp 0x100312ec
movsx ecx, word [0x100a50dc]
mov dword [ebp - 0x21c], ecx
mov dl, byte [ebp - 0x21c]
mov byte [ebp - 7], dl
mov eax, 8
imul ecx, eax, 0x4caa
mov edx, dword [0x100a5144]
sub edx, dword [ecx + 0x10169260]
mov dword [0x100a5144], edx
movzx eax, byte [ebp - 1]
test eax, eax
je 0x10031334
mov ecx, dword [0x100a5110]
mov edx, dword [0x100a5114]
mov dword [ebp - 0x620], ecx
mov dword [ebp - 0x61c], edx
jmp 0x10031345
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov dword [ebp - 0x620], eax
mov dword [ebp - 0x61c], ecx
mov edx, dword [ebp - 0x620]
mov dword [ebp - 0x48], edx
movsx eax, word [0x100a50fc]
shl eax, 8
cdq
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
jmp 0x100314a8
mov eax, 0x16
test eax, eax
je 0x100313a5
mov ecx, 8
mov word [ebp - 0x18], cx
mov dx, word [ebp - 0xc]
mov word [ebp - 0xc], dx
movsx eax, word [0x100a50ec]
sub eax, 0x8d
mov byte [str._NgcSignWithUserIdK], al
movsx eax, word [0x100a5138]
shl eax, 3
cdq
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
jmp 0x100314a8
xor ecx, ecx
je 0x100314a8
movsx edx, byte [0x100a504b]
test edx, edx
jne 0x100313c4
mov dword [ebp - 0x220], 1
jmp 0x100313ce
mov dword [ebp - 0x220], 0
cmp dword [ebp - 0x4c], 0
jne 0x100313e0
mov dword [ebp - 0x224], 1
jmp 0x100313ea
mov dword [ebp - 0x224], 0
mov eax, dword [ebp - 0x220]
add eax, dword [ebp - 0x224]
jne 0x1003140c
xor ecx, ecx
mov dword [ebp - 0x628], 1
mov dword [ebp - 0x624], ecx
jmp 0x10031417
xorps xmm0, xmm0
movlpd qword [ebp - 0x628], xmm0
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
add edx, dword [ebp - 0x628]
adc eax, dword [ebp - 0x624]
mov dword [ebp - 0x85c], edx
mov dword [ebp - 0x858], eax
mov ecx, dword [ebp - 0x85c]
or ecx, dword [ebp - 0x858]
jne 0x1003144f
mov dword [ebp - 0x228], 1
jmp 0x10031459
mov dword [ebp - 0x228], 0
mov edx, dword [ebp - 0x228]
mov dword [ebp - 0x2c], edx
mov ax, word [0x100a5140]
add ax, 1
mov word [0x100a5140], ax
mov ecx, dword [ebp - 0x2c]
add ecx, 0x70eee561
mov byte [0x100a5026], cl
movsx edx, word [0x100a50ec]
sub edx, 0x443e
mov word [ebp - 0x18], dx
mov eax, 0xff
mov word [0x100a50dc], ax
movzx ecx, byte [ebp - 1]
shl ecx, 2
mov word [ebp - 0x14], cx
mov edx, dword [0x100a5bfc]
mov dword [ebp - 0x158], edx
push 0x10086454
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov word [0x100a5128], ax
movzx eax, word [0x100a5128]
test eax, eax
je 0x10031522
movzx eax, byte [str._NgcSignWithUserIdK]
cdq
mov ecx, dword [0x100a50f0]
mov esi, dword [0x100a50f4]
sub ecx, eax
sbb esi, edx
mov edx, dword [0x100a50f0]
mov eax, dword [0x100a50f4]
sub edx, ecx
sbb eax, esi
mov dword [0x100a50f0], edx
mov dword [0x100a50f4], eax
movsx eax, byte [ebp - 3]
sar eax, 4
cdq
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov ecx, dword [ebp - 0x30]
add ecx, 0x92
mov word [ebp - 0xc], cx
jmp 0x1003174f
mov edx, dword [ebp - 0x44]
not edx
xor eax, eax
mov dword [ebp - 0x864], edx
mov dword [ebp - 0x860], eax
mov ecx, dword [ebp - 0x860]
cmp ecx, dword [0x100a5154]
jb 0x1003155f
ja 0x10031553
mov edx, dword [ebp - 0x864]
cmp edx, dword [0x100a5150]
jbe 0x1003155f
mov dword [ebp - 0x22c], 1
jmp 0x10031569
mov dword [ebp - 0x22c], 0
mov eax, dword [ebp - 0x22c]
cmp eax, dword [ebp - 0x2c]
jb 0x100315fb
xor ecx, ecx
mov dword [0x100a50f0], 2
mov dword [0x100a50f4], ecx
push 0x3aa89
push 0x48d49989
mov edx, dword [0x100a50e4]
push edx
mov eax, dword [0x100a50e0]
push eax
call fcn.10073670
mov word [ebp - 0xc], ax
movsx eax, word [0x100a513c]
cdq
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0xd94], edx
sub eax, ecx
mov word [0x100a513c], ax
mov eax, 8
imul ecx, eax, 6
mov edx, dword [ebp - 0x2c]
sub edx, dword [ecx + 0x102024a0]
mov dword [ebp - 0x2c], edx
movzx eax, byte [0x100a503b]
imul ecx, eax, 0xb9
movzx edx, byte [0x100a503b]
add edx, ecx
mov byte [0x100a503b], dl
jmp 0x1003174f
mov eax, dword [0x100a50e0]
or eax, dword [0x100a50e4]
je 0x1003163e
movzx ecx, word [ebp - 0x18]
add ecx, 0x9cdd
mov dword [ebp - 0x48], ecx
mov edx, dword [0x100a5120]
mov eax, dword [0x100a5124]
mov dword [ebp - 0xd98], eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0xd9c], eax
xor edx, ecx
not edx
mov dword [ebp - 0x2c], edx
jmp 0x1003174f
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov eax, dword [0x100a5118]
mov esi, dword [0x100a511c]
not eax
not esi
mov dword [ebp - 0x86c], ecx
mov dword [ebp - 0x868], edx
mov dword [ebp - 0x874], eax
mov dword [ebp - 0x870], esi
mov ecx, dword [ebp - 0x868]
cmp ecx, dword [ebp - 0x870]
ja 0x1003174f
jb 0x10031691
mov edx, dword [ebp - 0x86c]
cmp edx, dword [ebp - 0x874]
jae 0x1003174f
movsx eax, byte [ebp - 3]
sub eax, dword [ebp - 0x4c]
sub eax, dword [0x100a5144]
xor ecx, ecx
movzx edx, byte [ebp - 5]
imul edx, dword [0x100a5158]
xor esi, esi
mov edi, dword [0x100a5150]
not edi
mov ebx, dword [0x100a5154]
not ebx
mov dword [ebp - 0x73c], eax
mov eax, dword [0x100a5150]
sub eax, edi
mov edi, dword [0x100a5154]
sbb edi, ebx
add edx, eax
adc esi, edi
push esi
push edx
push ecx
mov eax, dword [ebp - 0x73c]
push eax
call fcn.10073670
mov dword [ebp - 0x87c], eax
mov dword [ebp - 0x878], edx
mov ecx, dword [ebp - 0x87c]
or ecx, dword [ebp - 0x878]
jne 0x1003170b
mov dword [ebp - 0x230], 1
jmp 0x10031715
mov dword [ebp - 0x230], 0
mov edx, dword [ebp - 0x230]
mov dword [ebp - 0x4c], edx
movsx eax, byte [ebp - 3]
imul ecx, eax, 0xc2
movzx edx, word [0x100a512c]
or edx, ecx
mov word [0x100a512c], dx
mov eax, dword [0x100a5bfc]
mov dword [ebp - 0x30], eax
movzx ecx, word [ebp - 0x14]
movzx edx, word [ebp - 0x18]
imul ecx, edx
mov word [ebp - 0x14], cx
mov eax, dword [ebp - 0x158]
add eax, 0x5a54
mov dword [ebp - 0xda0], eax
xor ecx, ecx
mov dword [ebp - 0x38], 1
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], eax
mov cl, byte [ebp - 6]
mov byte [ebp - 1], cl
movsx edx, byte [0x100a504b]
test edx, edx
jne 0x10031795
mov dword [ebp - 0x234], 1
jmp 0x1003179f
mov dword [ebp - 0x234], 0
movsx eax, byte [ebp - 3]
test eax, eax
jne 0x100317bb
xor ecx, ecx
mov dword [ebp - 0x4f8], 1
mov dword [ebp - 0x4f4], ecx
jmp 0x100317c6
xorps xmm0, xmm0
movlpd qword [ebp - 0x4f8], xmm0
mov edx, dword [ebp - 0x4f8]
sub edx, 0x6694424f
mov eax, dword [ebp - 0x4f4]
sbb eax, 0xae5dd
mov dword [ebp - 0x884], edx
mov dword [ebp - 0x880], eax
mov ecx, dword [ebp - 0x884]
or ecx, dword [ebp - 0x880]
jne 0x10031803
mov dword [ebp - 0x238], 1
jmp 0x1003180d
mov dword [ebp - 0x238], 0
movzx edx, word [0x100a512c]
add edx, dword [0x100a5158]
mov eax, dword [ebp - 0x4c]
imul eax, edx
movzx ecx, word [0x100a5148]
not ecx
imul ecx, dword [ebp - 0x234]
sub ecx, dword [ebp - 0x238]
sub eax, ecx
not eax
mov byte [ebp - 5], al
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x4c8], edx
mov dword [ebp - 0x4c4], eax
mov ecx, dword [ebp - 0x4c8]
or ecx, dword [ebp - 0x4c4]
je 0x10031878
cmp dword [ebp - 0x4c8], 1
jne 0x10031873
cmp dword [ebp - 0x4c4], 0
je 0x10031971
jmp 0x100319ad
movzx edx, word [ebp - 0x18]
shl edx, 2
mov word [ebp - 0x14], dx
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
push 0x63fce
push 0x833b061b
push ecx
push eax
call fcn.10073670
mov word [0x100a5138], ax
mov edx, dword [0x100a50e0]
or edx, dword [0x100a50e4]
jne 0x100318bb
mov eax, 1
mov word [ebp - 0x98], ax
jmp 0x100318c4
xor ecx, ecx
mov word [ebp - 0x98], cx
mov dx, word [ebp - 0x98]
mov word [0x100a50fc], dx
mov eax, dword [0x100a5118]
mov ecx, dword [0x100a511c]
add eax, 0x97
adc ecx, 0
mov edx, dword [ebp - 0x34]
add eax, dword [ebp - 0x38]
adc ecx, edx
mov dword [ebp - 0x88c], eax
mov dword [ebp - 0x888], ecx
mov eax, dword [ebp - 0x88c]
or eax, dword [ebp - 0x888]
jne 0x10031913
mov dword [ebp - 0x23c], 1
jmp 0x1003191d
mov dword [ebp - 0x23c], 0
movzx ecx, word [ebp - 0xc]
test ecx, ecx
jne 0x10031931
mov dword [ebp - 0x240], 1
jmp 0x1003193b
mov dword [ebp - 0x240], 0
mov edx, dword [ebp - 0x23c]
imul edx, dword [ebp - 0x240]
mov word [0x100a5128], dx
mov eax, dword [0x100a5150]
mov edx, dword [0x100a5154]
mov cl, 1
call fcn.100736b0
mov byte [ebp - 7], al
mov eax, 0x3849
mov word [0x100a513c], ax
jmp 0x100319ad
movzx ecx, word [ebp - 0xc]
movzx edx, byte [ebp - 2]
sub ecx, edx
mov word [ebp - 0xc], cx
movzx eax, byte [0x100a503b]
sub eax, 0xd3
mov word [ebp - 0x10], ax
mov ecx, dword [0x100a50f0]
mov edx, dword [0x100a50f4]
mov dword [ebp - 0xda4], edx
add ecx, 0x5f7b1afd
mov byte [0x100a503b], cl
mov eax, dword [ebp - 0x158]
add eax, 0x2f3
mov dword [ebp - 0xda8], eax
movzx ecx, word [0x100a5148]
movzx edx, byte [ebp - 4]
cmp ecx, edx
jne 0x100319d9
mov dword [ebp - 0x244], 1
jmp 0x100319e3
mov dword [ebp - 0x244], 0
movzx eax, word [0x100a5148]
cmp eax, 0x3c
jne 0x100319fb
mov dword [ebp - 0x248], 1
jmp 0x10031a05
mov dword [ebp - 0x248], 0
mov ecx, dword [ebp - 0x244]
cmp ecx, dword [ebp - 0x248]
jg 0x10031a78
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0xdac], eax
mov ecx, 2
imul eax, ecx, 0xa170
mov word [eax + 0x101e5e90], dx
movzx ecx, byte [ebp - 5]
movzx edx, word [ebp - 0xc]
imul ecx, edx
mov byte [ebp - 4], cl
movsx eax, byte [ebp - 6]
imul ecx, eax, 0x45560253
mov byte [ebp - 1], cl
xor edx, edx
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
add eax, dword [ebp - 0x48]
adc ecx, edx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
movzx eax, word [ebp - 0x18]
cdq
add eax, dword [ebp - 0x40]
adc edx, dword [ebp - 0x3c]
add eax, dword [ebp - 0x40]
adc edx, dword [ebp - 0x3c]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
jmp 0x10031ae5
movzx edx, byte [ebp - 1]
not edx
test edx, edx
je 0x10031ae5
movzx eax, byte [ebp - 4]
movzx ecx, byte [0x100a503b]
add eax, ecx
movzx edx, byte [ebp - 4]
imul edx, eax
mov byte [ebp - 4], dl
movzx eax, word [0x100a5130]
cdq
mov ecx, eax
mov esi, edx
mov edx, dword [ebp - 0x34]
sub ecx, dword [ebp - 0x38]
sbb esi, edx
movzx eax, word [0x100a5130]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073670
mov word [0x100a5130], ax
mov eax, 0x7dc9
mov word [ebp - 0x14], ax
movzx ecx, word [ebp - 0x14]
mov edx, dword [0x100a5158]
sub edx, ecx
xor edx, dword [0x100a5158]
mov dword [0x100a5158], edx
mov eax, dword [ebp - 0x158]
add eax, 0x338
mov dword [ebp - 0xdb0], eax
mov ecx, dword [str.StringFromGUID2]
mov dword [ebp - 0xcc0], ecx
mov edx, dword [0x10086464]
mov dword [ebp - 0xcbc], edx
mov eax, dword [0x10086468]
mov dword [ebp - 0xcb8], eax
mov ecx, dword [0x1008646c]
mov dword [ebp - 0xcb4], ecx
lea edx, [ebp - 0xcc0]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [ebp - 0x48], eax
movzx eax, byte [str._NgcSignWithUserIdK]
cdq
mov ecx, dword [0x100a5110]
mov esi, dword [0x100a5114]
mov dword [ebp - 0x894], eax
mov dword [ebp - 0x890], edx
mov dword [ebp - 0x89c], ecx
mov dword [ebp - 0x898], esi
mov edx, dword [ebp - 0x890]
cmp edx, dword [ebp - 0x898]
ja 0x10031bf8
jb 0x10031b83
mov eax, dword [ebp - 0x894]
cmp eax, dword [ebp - 0x89c]
ja 0x10031bf8
cmp dword [ebp - 0x2c], 0
je 0x10031bf3
movzx ecx, word [0x100a5128]
imul edx, ecx, 0xc988
mov eax, dword [ebp - 0x2c]
sub eax, edx
mov dword [ebp - 0x2c], eax
mov cx, word [0x100a515c]
add cx, 1
mov word [0x100a515c], cx
movsx eax, word [0x100a5140]
cdq
push 0xd8da0
push 0x15e36e72
push edx
push eax
call fcn.10073670
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
movsx edx, byte [ebp - 3]
sub edx, dword [ebp - 0x48]
mov byte [ebp - 3], dl
mov eax, dword [0x100a5118]
mov ecx, dword [0x100a511c]
mov dword [ebp - 0xdb4], ecx
sub eax, 0x8c10
mov word [ebp - 0x18], ax
jmp 0x10031dde
movsx edx, word [0x100a5134]
test edx, edx
je 0x10031c7e
mov eax, dword [ebp - 0x44]
sub eax, 0x78
movsx ecx, byte [ebp - 6]
or ecx, eax
mov byte [ebp - 6], cl
movsx eax, word [0x100a513c]
cdq
mov ecx, eax
mov esi, edx
mov edx, dword [0x100a5114]
sub ecx, dword [0x100a5110]
sbb esi, edx
not ecx
not esi
movzx eax, word [0x100a5130]
sub eax, dword [0x100a50e8]
cdq
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], esi
movzx eax, word [0x100a510c]
mov ecx, dword [ebp - 0x2c]
sub ecx, eax
add ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], ecx
mov dl, byte [0x100a503b]
sub dl, 1
mov byte [0x100a503b], dl
movzx eax, word [0x100a512c]
add eax, 0xdcea
mov word [ebp - 0x14], ax
jmp 0x10031dde
cmp dword [0x100a50f8], 0
jne 0x10031cd7
movsx ecx, word [0x100a5140]
sub ecx, 0x530a
mov byte [ebp - 6], cl
movsx eax, word [0x100a5138]
cdq
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], esi
movzx edx, byte [ebp - 2]
movzx eax, byte [str._NgcSignWithUserIdK]
not eax
sub edx, eax
mov word [ebp - 0xc], dx
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov cl, 8
call fcn.10073780
mov byte [ebp - 6], al
jmp 0x10031dde
movzx ecx, word [0x100a510c]
cmp ecx, dword [ebp - 0x30]
je 0x10031cef
mov dword [ebp - 0x24c], 1
jmp 0x10031cf9
mov dword [ebp - 0x24c], 0
mov edx, dword [0x100a5158]
cmp edx, dword [ebp - 0x24c]
ja 0x10031dde
movzx eax, byte [ebp - 5]
test eax, eax
je 0x10031d1f
movzx ecx, byte [ebp - 7]
mov dword [ebp - 0x250], ecx
jmp 0x10031d29
movzx edx, word [ebp - 0xc]
mov dword [ebp - 0x250], edx
mov ax, word [ebp - 0x250]
mov word [0x100a510c], ax
mov ecx, dword [0x100a5108]
and ecx, dword [ebp - 0x2c]
movsx eax, word [0x100a50fc]
cdq
mov edx, dword [0x100a50f0]
mov esi, dword [0x100a50f4]
mov dword [ebp - 0xdb8], esi
sub eax, edx
xor ecx, eax
mov byte [ebp - 5], cl
cmp dword [ebp - 0x48], 0
je 0x10031d7f
mov eax, dword [0x100a5150]
mov ecx, dword [0x100a5154]
mov dword [ebp - 0x500], eax
mov dword [ebp - 0x4fc], ecx
jmp 0x10031d90
movzx eax, byte [ebp - 5]
cdq
mov dword [ebp - 0x500], eax
mov dword [ebp - 0x4fc], edx
mov dl, byte [ebp - 0x500]
mov byte [ebp - 2], dl
movzx eax, word [0x100a512c]
mov ecx, dword [ebp - 0x48]
imul ecx, eax
mov dword [ebp - 0x48], ecx
movsx eax, byte [ebp - 3]
cdq
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0xdbc], ecx
sub edx, eax
mov word [0x100a5128], dx
mov eax, dword [0x100a50e8]
sub eax, 0x5e96
cdq
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x740], 0x50c
mov edx, 0xc334d
mov dword [0x100a50f0], 0xe0a65bcb
mov dword [0x100a50f4], edx
mov eax, dword [ebp - 0x44]
add eax, 0x6e23fbd6
mov byte [ebp - 5], al
movzx ecx, word [0x100a5128]
add ecx, 0xd3
movzx edx, word [ebp - 0x14]
sub edx, ecx
mov word [ebp - 0x14], dx
movzx eax, word [ebp - 0x18]
cdq
or eax, dword [0x100a5110]
or edx, dword [0x100a5114]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
movsx eax, byte [ebp - 6]
movzx ecx, byte [ebp - 2]
add eax, ecx
movsx edx, byte [ebp - 6]
sub edx, eax
mov byte [ebp - 6], dl
mov eax, dword [0x100a50e8]
cdq
mov dword [0x100a5120], eax
mov dword [0x100a5124], edx
movzx eax, byte [0x100a503b]
cdq
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
add ecx, 0x402c
adc esi, 0
mov dword [ebp - 0x8a4], eax
mov dword [ebp - 0x8a0], edx
mov dword [ebp - 0x8ac], ecx
mov dword [ebp - 0x8a8], esi
mov edx, dword [ebp - 0x8a4]
cmp edx, dword [ebp - 0x8ac]
jne 0x100322a2
mov eax, dword [ebp - 0x8a0]
cmp eax, dword [ebp - 0x8a8]
jne 0x100322a2
movzx ecx, word [0x100a5128]
movzx edx, byte [ebp - 1]
add ecx, edx
cmp ecx, 1
jne 0x100322a2
call dword [sym.imp.USER32.dll_GetActiveWindow]
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
jge 0x1003219d
movsx eax, byte [ebp - 6]
movzx ecx, word [ebp - 0x18]
cmp eax, ecx
jle 0x10031fd6
movsx edx, word [0x100a5134]
sub edx, 0xd7811a8
mov word [0x100a5128], dx
movsx eax, byte [0x100a504b]
cdq
mov ecx, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x20]
sbb edx, ecx
mov dword [ebp - 0x8b4], eax
mov dword [ebp - 0x8b0], edx
mov edx, dword [ebp - 0x8b4]
or edx, dword [ebp - 0x8b0]
jne 0x10031f30
mov dword [ebp - 0x254], 1
jmp 0x10031f3a
mov dword [ebp - 0x254], 0
mov eax, dword [0x100a50e8]
add eax, dword [ebp - 0x2c]
not eax
add eax, dword [ebp - 0x254]
jne 0x10031f60
xor ecx, ecx
mov dword [ebp - 0x8bc], 1
mov dword [ebp - 0x8b8], ecx
jmp 0x10031f6b
xorps xmm0, xmm0
movlpd qword [ebp - 0x8bc], xmm0
movzx eax, byte [str._NgcSignWithUserIdK]
cdq
add eax, dword [ebp - 0x40]
add eax, dword [ebp - 0x8bc]
mov word [ebp - 0xc], ax
movzx edx, word [ebp - 0x10]
movsx eax, word [0x100a513c]
add edx, eax
mov word [ebp - 0x10], dx
movzx eax, byte [ebp - 7]
cdq
mov ecx, eax
mov edx, dword [0x100a5110]
mov eax, dword [0x100a5114]
mov dword [ebp - 0xdc0], eax
add ecx, edx
movzx eax, byte [ebp - 7]
cdq
or eax, ecx
mov byte [ebp - 7], al
movzx eax, word [0x100a510c]
cdq
mov ecx, 8
imul ecx, ecx, 6
mov dword [ecx + 0x102024a0], eax
mov dword [ecx + 0x102024a4], edx
jmp 0x10032198
movsx eax, word [0x100a5138]
cdq
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov dword [ebp - 0x8c4], eax
mov dword [ebp - 0x8c0], edx
mov dword [ebp - 0x8cc], ecx
mov dword [ebp - 0x8c8], esi
mov edx, dword [ebp - 0x8c4]
cmp edx, dword [ebp - 0x8cc]
jne 0x100320ca
mov eax, dword [ebp - 0x8c0]
cmp eax, dword [ebp - 0x8c8]
jne 0x100320ca
movsx ecx, word [0x100a50dc]
test ecx, ecx
je 0x1003203e
movzx eax, byte [ebp - 7]
cdq
mov dword [ebp - 0x508], eax
mov dword [ebp - 0x504], edx
jmp 0x10032050
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x508], edx
mov dword [ebp - 0x504], eax
mov ecx, dword [ebp - 0x508]
mov dword [ebp - 0x44], ecx
movsx eax, word [0x100a5140]
xor eax, 0x6aa1c41a
cdq
mov dword [0x100a5100], eax
mov dword [0x100a5104], edx
movsx edx, byte [0x100a504b]
imul eax, edx, 0x34fb7954
mov word [0x100a5138], ax
mov ecx, 1
imul edx, ecx, 0x2a
mov al, byte [ebp - 0x14]
mov byte [edx + 0x100f5290], al
movzx ecx, word [ebp - 0x18]
mov edx, dword [0x100a5158]
lea eax, [edx + ecx + 0x53]
mov dword [0x100a5158], eax
movzx ecx, word [0x100a5130]
movsx edx, byte [ebp - 6]
imul ecx, edx
movzx eax, word [0x100a5130]
or eax, ecx
mov word [0x100a5130], ax
jmp 0x10032198
movsx ecx, word [0x100a50fc]
test ecx, ecx
je 0x10032113
mov eax, dword [ebp - 0x4c]
cdq
mov ecx, eax
sub ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x4c]
cdq
sub eax, ecx
mov dword [ebp - 0x4c], eax
mov edx, dword [ebp - 0x2c]
sub edx, 0x79908efe
xor eax, eax
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], eax
movzx ecx, word [0x100a5148]
movzx edx, word [ebp - 0x10]
sub ecx, edx
not ecx
mov word [0x100a512c], cx
jmp 0x10032198
movsx eax, word [0x100a5138]
test eax, eax
je 0x10032198
movzx ecx, byte [str._NgcSignWithUserIdK]
movzx edx, word [ebp - 0x18]
sub ecx, edx
movzx eax, byte [str._NgcSignWithUserIdK]
xor eax, ecx
mov byte [str._NgcSignWithUserIdK], al
mov ecx, 4
imul edx, ecx, 0x10cc
movzx eax, word [0x100a5130]
xor eax, dword [edx + 0x102593b0]
mov word [0x100a5130], ax
movzx ecx, word [ebp - 0x10]
sub ecx, dword [ebp - 0x48]
mov word [ebp - 0x10], cx
mov edx, dword [0x100a5108]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0xdc4], ecx
add edx, eax
mov dword [0x100a5108], edx
mov edx, dword [0x100a5120]
mov eax, dword [0x100a5124]
sub edx, 1
sbb eax, 0
mov dword [0x100a5120], edx
mov dword [0x100a5124], eax
jmp 0x1003224f
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x8d4], ecx
mov dword [ebp - 0x8d0], edx
mov eax, dword [ebp - 0x8d4]
or eax, dword [ebp - 0x8d0]
je 0x1003220b
mov eax, dword [0x100a50f8]
cdq
mov ecx, eax
mov esi, edx
sub ecx, 0x116cfc27
sbb esi, 0x31ed
movzx eax, byte [str._NgcSignWithUserIdK]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073670
mov byte [str._NgcSignWithUserIdK], al
movzx edx, word [ebp - 0x14]
shl edx, 7
mov byte [ebp - 7], dl
movzx eax, word [0x100a510c]
movsx ecx, word [0x100a50ec]
sub eax, ecx
mov word [0x100a510c], ax
jmp 0x1003224f
movzx edx, byte [ebp - 5]
test edx, edx
je 0x1003224f
xor eax, eax
mov dword [0x100a5118], 0xdbfa0323
mov dword [0x100a511c], eax
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0xdc8], edx
sub ecx, 0xdb5c
mov word [0x100a50ec], cx
mov eax, dword [0x100a5bfc]
xor ecx, ecx
mov dword [0x100a5100], eax
mov dword [0x100a5104], ecx
jmp 0x10031de8
cmp dword [ebp - 0x4c], 0
je 0x1003235a
movzx eax, word [0x100a5148]
not eax
movsx ecx, word [0x100a5138]
add eax, ecx
jne 0x100322d4
xor edx, edx
mov dword [ebp - 0x8dc], 1
mov dword [ebp - 0x8d8], edx
jmp 0x100322df
xorps xmm0, xmm0
movlpd qword [ebp - 0x8dc], xmm0
mov eax, dword [0x100a50f8]
cdq
mov ecx, dword [ebp - 0x40]
add ecx, dword [ebp - 0x8dc]
sub eax, ecx
mov word [ebp - 0x10], ax
mov edx, dword [0x100a5150]
xor edx, 0x2c
mov eax, dword [0x100a5154]
xor eax, 0
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], eax
mov ecx, dword [0x100a50e8]
add ecx, 0x48c2a4fe
mov byte [str._NgcSignWithUserIdK], cl
movsx edx, word [0x100a515c]
add edx, 0x2a58497a
mov byte [ebp - 7], dl
movsx eax, byte [ebp - 3]
mov ecx, dword [0x100a50f8]
sub ecx, eax
or ecx, dword [0x100a50f8]
mov dword [0x100a50f8], ecx
movsx edx, word [0x100a515c]
imul eax, edx, 0x1dd1fd4d
mov byte [ebp - 4], al
jmp 0x1003250f
movzx ecx, word [ebp - 0x18]
test ecx, ecx
jne 0x1003236e
mov dword [ebp - 0x258], 1
jmp 0x10032378
mov dword [ebp - 0x258], 0
mov edx, dword [ebp - 0x44]
cmp edx, dword [ebp - 0x258]
jae 0x100323af
mov eax, dword [ebp - 0x30]
sub eax, 0x57de
mov dword [0x100a50f8], eax
mov eax, dword [0x100a50f8]
cdq
push 0x70bb8
push 0xe96397e3
push edx
push eax
call fcn.10073670
mov dword [ebp - 0x44], eax
jmp 0x1003250f
movsx ecx, word [0x100a50ec]
test ecx, ecx
je 0x100323d3
mov edx, 0xadf2ebc2
or edx, 0xa85dc
je 0x100323d3
mov dword [ebp - 0x260], 1
jmp 0x100323dd
mov dword [ebp - 0x260], 0
movzx eax, word [ebp - 0x14]
cdq
mov ecx, dword [0x100a5120]
mov esi, dword [0x100a5124]
mov dword [ebp - 0x8e4], eax
mov dword [ebp - 0x8e0], edx
mov dword [ebp - 0x8ec], ecx
mov dword [ebp - 0x8e8], esi
mov edx, dword [ebp - 0x8e4]
cmp edx, dword [ebp - 0x8ec]
jne 0x10032422
mov eax, dword [ebp - 0x8e0]
cmp eax, dword [ebp - 0x8e8]
je 0x1003242e
mov dword [ebp - 0x25c], 1
jmp 0x10032438
mov dword [ebp - 0x25c], 0
mov ecx, dword [ebp - 0x25c]
not ecx
cmp dword [ebp - 0x260], ecx
jle 0x1003250f
mov edx, dword [ebp - 0x30]
add edx, 0x31
mov byte [ebp - 6], dl
movsx eax, byte [0x100a5026]
test eax, eax
je 0x10032474
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x510], ecx
mov dword [ebp - 0x50c], edx
jmp 0x10032485
movzx eax, word [ebp - 0x14]
cdq
mov dword [ebp - 0x510], eax
mov dword [ebp - 0x50c], edx
mov al, byte [ebp - 0x510]
mov byte [ebp - 1], al
movzx ecx, word [0x100a5148]
test ecx, ecx
jne 0x100324a5
mov dword [ebp - 0x264], 1
jmp 0x100324af
mov dword [ebp - 0x264], 0
mov ecx, dword [0x100a5110]
mov esi, dword [0x100a5114]
mov edx, dword [0x100a5104]
sub ecx, dword [0x100a5100]
sbb esi, edx
movsx eax, word [0x100a50ec]
not eax
movzx edx, word [ebp - 0xc]
imul eax, edx
cdq
push edx
push eax
push esi
push ecx
call fcn.10073670
mov ecx, eax
mov esi, edx
movzx eax, byte [str._NgcSignWithUserIdK]
add eax, dword [ebp - 0x264]
cdq
mov edi, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x24]
sub edi, eax
sbb ebx, edx
sub ecx, edi
sbb esi, ebx
mov dword [0x100a50e0], ecx
mov dword [0x100a50e4], esi
push 0
lea edx, [ebp - 0x1540]
push edx
push 0
push 0
call fcn.10001590
call eax
test eax, eax
je 0x100387b3
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
movsx eax, byte [ebp - 3]
cdq
mov dword [ebp - 0x8f4], ecx
mov dword [ebp - 0x8f0], esi
mov dword [ebp - 0x8fc], eax
mov dword [ebp - 0x8f8], edx
mov edx, dword [ebp - 0x8f4]
cmp edx, dword [ebp - 0x8fc]
jne 0x100325c9
mov eax, dword [ebp - 0x8f0]
cmp eax, dword [ebp - 0x8f8]
jne 0x100325c9
mov eax, dword [0x100a50e8]
cdq
mov ecx, eax
sub ecx, dword [0x100a5150]
mov eax, dword [0x100a50e8]
cdq
sub eax, ecx
mov dword [0x100a50e8], eax
movzx edx, word [ebp - 0x10]
movzx eax, word [ebp - 0xc]
sub edx, eax
movzx ecx, word [ebp - 0x10]
imul ecx, edx
mov word [ebp - 0x10], cx
mov eax, dword [0x100a50f8]
cdq
push 0x41932
push 0xc79d9ac2
push edx
push eax
call fcn.10073670
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
movzx edx, byte [ebp - 7]
movzx eax, word [ebp - 0x14]
xor edx, eax
mov byte [ebp - 7], dl
jmp 0x1003278f
movzx ecx, byte [ebp - 4]
test ecx, ecx
jne 0x100325dd
mov dword [ebp - 0x268], 1
jmp 0x100325e7
mov dword [ebp - 0x268], 0
movsx edx, word [0x100a50ec]
test edx, edx
jne 0x100325fe
mov dword [ebp - 0x26c], 1
jmp 0x10032608
mov dword [ebp - 0x26c], 0
mov eax, dword [ebp - 0x268]
cmp eax, dword [ebp - 0x26c]
jl 0x100326ec
mov eax, dword [ebp - 0x4c]
sub eax, 0xd594
cdq
mov ecx, dword [0x100a50e0]
sub ecx, eax
mov eax, dword [0x100a50e4]
sbb eax, edx
mov dword [0x100a50e0], ecx
mov dword [0x100a50e4], eax
movzx ecx, word [ebp - 0x10]
and ecx, dword [0x100a5158]
movzx edx, word [ebp - 0x10]
sub edx, ecx
mov word [ebp - 0x10], dx
cmp dword [ebp - 0x4c], 0
jne 0x1003266b
xor eax, eax
mov dword [ebp - 0x520], 1
mov dword [ebp - 0x51c], eax
jmp 0x10032676
xorps xmm0, xmm0
movlpd qword [ebp - 0x520], xmm0
movzx ecx, word [ebp - 0xc]
test ecx, ecx
jne 0x10032692
xor edx, edx
mov dword [ebp - 0x518], 1
mov dword [ebp - 0x514], edx
jmp 0x1003269d
xorps xmm0, xmm0
movlpd qword [ebp - 0x518], xmm0
mov eax, dword [ebp - 0x518]
or eax, dword [0x100a5150]
mov ecx, dword [ebp - 0x514]
or ecx, dword [0x100a5154]
not eax
not ecx
movzx edx, word [0x100a5148]
xor edx, dword [0x100a5158]
xor esi, esi
or eax, edx
or ecx, esi
mov edx, dword [ebp - 0x520]
sub edx, eax
mov eax, dword [ebp - 0x51c]
sbb eax, ecx
mov dword [0x100a50e0], edx
mov dword [0x100a50e4], eax
jmp 0x1003278f
movsx ecx, byte [ebp - 3]
test ecx, ecx
jne 0x1003278f
movsx edx, word [0x100a5134]
test edx, edx
jne 0x1003270f
mov dword [ebp - 0x270], 1
jmp 0x10032719
mov dword [ebp - 0x270], 0
mov eax, dword [0x100a50e8]
cmp eax, dword [ebp - 0x270]
jle 0x1003278f
movsx eax, word [0x100a513c]
cdq
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0xdcc], edx
sub ecx, eax
not ecx
mov word [ebp - 0xc], cx
movzx eax, word [0x100a5130]
sub eax, 0x52
mov byte [ebp - 6], al
mov cl, byte [ebp - 0x14]
mov byte [ebp - 2], cl
movzx dx, byte [ebp - 2]
mov word [0x100a515c], dx
mov eax, dword [0x100a5150]
sub eax, 0xba
mov ecx, dword [ebp - 0x48]
sub ecx, eax
mov dword [ebp - 0x48], ecx
movzx eax, byte [ebp - 2]
cdq
push 0xad3da
push 0x58a3a643
push edx
push eax
call fcn.10073670
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
mov dword [0x100a5144], 0x5dfdb61a
mov edx, dword [0x100a50f8]
push edx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov word [0x100a50ec], ax
movzx eax, word [ebp - 0x14]
add eax, 1
cmp dword [0x100a5144], eax
jne 0x10032a4e
mov byte [ebp - 2], 1
mov ecx, dword [0x100a5bfc]
mov dword [ebp - 0x4c], ecx
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xdd0], eax
mov dword [ebp - 0x2c], edx
movzx ecx, byte [ebp - 2]
movsx edx, word [0x100a5140]
sub ecx, edx
mov byte [ebp - 1], cl
mov dword [ebp - 0x48], 0xa9799cb5
mov al, byte [ebp - 2]
mov byte [ebp - 0x274], al
cmp byte [ebp - 0x274], 0
je 0x10032816
cmp byte [ebp - 0x274], 1
je 0x100328c8
jmp 0x1003294f
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0xdd4], eax
sub ecx, edx
mov dword [ebp - 0x44], ecx
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x904], ecx
mov dword [ebp - 0x900], edx
mov eax, dword [ebp - 0x904]
or eax, dword [ebp - 0x900]
jne 0x1003285e
xor ecx, ecx
mov dword [ebp - 0x528], 1
mov dword [ebp - 0x524], ecx
jmp 0x10032869
xorps xmm0, xmm0
movlpd qword [ebp - 0x528], xmm0
mov edx, dword [ebp - 0x30]
xor eax, eax
mov ecx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x20]
adc eax, ecx
mov ecx, dword [ebp - 0x528]
sub ecx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x524]
sbb esi, dword [ebp - 0x3c]
add edx, ecx
adc eax, esi
not edx
not eax
xor ecx, ecx
add edx, dword [ebp - 0x48]
adc eax, ecx
mov dword [0x100a5110], edx
mov dword [0x100a5114], eax
movsx edx, word [0x100a50fc]
movsx eax, word [0x100a5138]
sub edx, eax
movsx ecx, word [0x100a50fc]
imul ecx, edx
mov word [0x100a50fc], cx
jmp 0x1003294f
movsx eax, word [0x100a515c]
imul eax, dword [0x100a50e8]
cdq
mov ecx, eax
mov esi, edx
mov eax, dword [0x100a50f8]
cdq
mov edi, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x24]
add edi, eax
adc ebx, edx
not edi
not ebx
push ebx
push edi
push esi
push ecx
call fcn.10073670
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
movzx edx, word [0x100a5148]
sub edx, 0xf0a7
mov byte [ebp - 5], dl
mov eax, 2
imul ecx, eax, 0x5e2
mov dx, word [ebp - 0x2c]
mov word [ecx + 0x100fd620], dx
movzx eax, byte [ebp - 4]
movzx ecx, byte [ebp - 2]
sub eax, ecx
movzx edx, byte [ebp - 4]
add edx, eax
mov byte [ebp - 4], dl
movzx eax, word [ebp - 0x10]
movzx ecx, word [0x100a5128]
add eax, ecx
movzx edx, word [ebp - 0x10]
imul edx, eax
mov word [ebp - 0x10], dx
mov eax, dword [0x100a5100]
mov ecx, dword [0x100a5104]
mov dword [ebp - 0xdd8], ecx
mov byte [ebp - 1], al
movzx edx, word [ebp - 0x18]
imul eax, edx, 0x2c
mov dword [0x100a5144], eax
mov eax, dword [0x100a50e8]
cdq
push 0xbebd1
push 0xd621a6f2
push edx
push eax
call fcn.10073670
mov ecx, eax
movzx eax, byte [ebp - 5]
cdq
xor eax, ecx
mov byte [ebp - 5], al
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0xddc], eax
add edx, 0x6f33
mov dword [0x100a5158], edx
mov ecx, 4
mov word [ebp - 0x18], cx
movzx edx, byte [str._NgcSignWithUserIdK]
cmp edx, 1
jne 0x10032a4e
mov eax, dword [0x100a5108]
shr eax, 1
mov dword [ebp - 0x48], eax
mov cx, word [0x100a513c]
add cx, 1
mov word [0x100a513c], cx
movzx edx, word [0x100a510c]
add edx, dword [0x100a5158]
mov dword [0x100a5158], edx
mov ax, word [0x100a5bfc]
mov word [0x100a5128], ax
movzx ecx, word [ebp - 0xc]
mov edx, dword [0x100a50f8]
sub edx, ecx
movzx eax, word [0x100a510c]
imul edx, eax
mov byte [ebp - 1], dl
jmp 0x10032a4e
mov dword [0x100a5144], 0x5dfdb61a
mov eax, dword [ebp - 0x48]
imul eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x48]
imul ecx, eax
mov dword [ebp - 0x48], ecx
movsx edx, word [0x100a515c]
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x44], 0
jne 0x10032a7e
mov byte [ebp - 0x51], 1
jmp 0x10032a82
mov byte [ebp - 0x51], 0
mov al, byte [ebp - 0x51]
mov byte [0x100a504b], al
movsx ecx, word [0x100a5138]
movsx edx, byte [ebp - 3]
xor ecx, edx
not ecx
imul eax, ecx, 0xffffa456
cdq
movzx ecx, word [0x100a5128]
imul ecx, dword [ebp - 0x48]
xor esi, esi
mov edi, dword [ebp - 0x34]
sub ecx, dword [ebp - 0x38]
sbb esi, edi
push esi
push ecx
push edx
push eax
call fcn.10073670
mov byte [ebp - 3], al
movsx edx, byte [ebp - 3]
imul eax, edx, 0xddce
movsx ecx, word [0x100a513c]
sub ecx, eax
mov word [0x100a513c], cx
movzx edx, word [ebp - 0x18]
imul eax, edx, 0x64
mov byte [ebp - 1], al
mov ecx, dword [0x100a5bfc]
mov dword [ebp - 0x160], ecx
mov byte [ebp - 4], 2
movzx edx, byte [ebp - 7]
movzx eax, word [ebp - 0xc]
xor edx, eax
movzx ecx, byte [ebp - 7]
sub ecx, edx
mov byte [ebp - 7], cl
movzx edx, byte [ebp - 7]
add edx, 0x73c24920
mov word [ebp - 0x14], dx
mov eax, 0x10ee
mov word [0x100a5134], ax
movzx ecx, word [ebp - 0x10]
sub ecx, 0x22
mov word [0x100a5138], cx
movsx eax, word [0x100a513c]
cdq
and eax, 0x412c4991
mov dword [ebp - 0x2c], eax
mov dl, byte [ebp - 4]
mov byte [ebp - 0x15c], dl
cmp byte [ebp - 0x15c], 0
je 0x10032b6c
cmp byte [ebp - 0x15c], 1
je 0x10032bbb
cmp byte [ebp - 0x15c], 2
je 0x10032c1b
jmp 0x10032c89
mov eax, 8
imul ecx, eax, 3
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
mov dword [ecx + 0x102024a0], edx
mov dword [ecx + 0x102024a4], eax
mov ecx, dword [ebp - 0x2c]
add ecx, dword [ebp - 0x40]
mov dword [ebp - 0x2c], ecx
movsx eax, byte [0x100a5026]
sub eax, 0x5938
cdq
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
movsx edx, word [0x100a513c]
movsx eax, word [0x100a5140]
imul edx, eax
mov byte [ebp - 1], dl
jmp 0x10032c89
mov cl, byte [0x100a5128]
mov byte [ebp - 1], cl
movzx edx, word [0x100a512c]
xor edx, 0x6c08
mov byte [0x100a504b], dl
mov eax, dword [0x100a5150]
or eax, dword [0x100a5154]
je 0x10032bf3
movzx ecx, byte [str._NgcSignWithUserIdK]
mov dword [ebp - 0x278], ecx
jmp 0x10032bfd
movsx edx, byte [ebp - 3]
mov dword [ebp - 0x278], edx
mov eax, dword [ebp - 0x278]
mov dword [0x100a50f8], eax
mov ecx, dword [ebp - 0x48]
sub ecx, 0x6048c4d8
mov edx, dword [ebp - 0x44]
sub edx, ecx
mov dword [ebp - 0x44], edx
jmp 0x10032c89
movzx eax, word [0x100a512c]
sub eax, dword [0x100a50e8]
movzx ecx, word [0x100a512c]
sub ecx, eax
mov word [0x100a512c], cx
movzx edx, word [0x100a512c]
add edx, 0xeb
movzx eax, word [0x100a5148]
sub eax, edx
mov word [0x100a5148], ax
mov cx, word [0x100a512c]
add cx, 1
mov word [0x100a512c], cx
mov dl, byte [0x100a5bfc]
mov byte [str._NgcSignWithUserIdK], dl
xor eax, eax
mov dword [ebp - 0x20], 0x72
mov dword [ebp - 0x1c], eax
mov cx, word [ebp - 0x40]
mov word [0x100a5128], cx
mov edx, dword [ebp - 0x160]
add edx, 0x28f
mov dword [ebp - 0x298], edx
mov eax, 0x9a59
mov word [0x100a512c], ax
mov ecx, dword [0x100a50f8]
sub ecx, 1
mov dword [0x100a50f8], ecx
movzx edx, word [ebp - 0xc]
add edx, 0x5645
mov byte [ebp - 1], dl
mov eax, dword [ebp - 0x160]
add eax, 0x3d9
mov dword [ebp - 0xde4], eax
movzx ecx, word [ebp - 0x14]
test ecx, ecx
je 0x10033161
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
movzx eax, word [ebp - 0x14]
cdq
mov dword [ebp - 0x90c], ecx
mov dword [ebp - 0x908], esi
mov dword [ebp - 0x914], eax
mov dword [ebp - 0x910], edx
mov edx, dword [ebp - 0x90c]
cmp edx, dword [ebp - 0x914]
jne 0x10032d22
mov eax, dword [ebp - 0x908]
cmp eax, dword [ebp - 0x910]
je 0x10033068
xor ecx, ecx
mov dword [0x100a5100], 4
mov dword [0x100a5104], ecx
movzx edx, word [0x100a5128]
imul eax, edx, 0xa380
mov byte [0x100a503b], al
movzx ecx, byte [ebp - 5]
movzx edx, byte [ebp - 4]
movsx eax, word [0x100a515c]
xor edx, eax
imul ecx, edx
mov dword [0x100a5108], ecx
movsx ecx, word [0x100a5138]
sub ecx, dword [ebp - 0x2c]
not ecx
movsx edx, word [0x100a515c]
movzx eax, word [ebp - 0x18]
imul edx, eax
sub ecx, edx
jne 0x10032d8a
mov dword [ebp - 0x27c], 1
jmp 0x10032d94
mov dword [ebp - 0x27c], 0
movzx ecx, byte [str._NgcSignWithUserIdK]
not ecx
sub ecx, 0x60eda83a
xor ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x27c]
sub edx, ecx
mov word [0x100a5130], dx
movzx eax, byte [str._NgcSignWithUserIdK]
imul eax, dword [0x100a50e8]
mov dword [0x100a50e8], eax
movzx ecx, byte [ebp - 1]
sar ecx, 1
mov word [0x100a510c], cx
mov edx, dword [0x100a5100]
mov eax, dword [0x100a5104]
mov dword [ebp - 0x530], edx
mov dword [ebp - 0x52c], eax
cmp dword [ebp - 0x52c], 0
ja 0x10033063
jb 0x10032e08
cmp dword [ebp - 0x530], 4
ja 0x10033063
mov ecx, dword [ebp - 0x530]
mov dword [ebp - 0xecc], ecx
mov edx, dword [ebp - 0xecc]
jmp dword [edx*4 + 0x1003a144]
jmp 0x10033161
movzx edx, byte [ebp - 2]
test edx, edx
jne 0x1003307c
mov dword [ebp - 0x288], 1
jmp 0x10033086
mov dword [ebp - 0x288], 0
movsx eax, byte [0x100a504b]
cmp dword [ebp - 0x288], eax
jg 0x10033161
mov ecx, dword [0x100a5120]
mov edx, dword [0x100a5124]
add ecx, 0x702f
adc edx, 0
mov dword [0x100a5110], ecx
mov dword [0x100a5114], edx
imul eax, dword [ebp - 0x44], 0x67
xor ecx, ecx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], ecx
movsx edx, byte [0x100a504b]
imul eax, edx, 0xf5
mov word [ebp - 0x14], ax
mov cx, word [ebp - 0xc]
mov word [0x100a50ec], cx
mov edx, dword [ebp - 0x40]
or edx, dword [ebp - 0x3c]
jne 0x100330f6
mov dword [ebp - 0x28c], 1
jmp 0x10033100
mov dword [ebp - 0x28c], 0
movsx eax, byte [ebp - 3]
movzx ecx, word [0x100a512c]
xor ecx, dword [ebp - 0x28c]
sub eax, ecx
movzx edx, byte [ebp - 1]
imul eax, edx
test eax, eax
jne 0x1003312a
mov dword [ebp - 0x290], 1
jmp 0x10033134
mov dword [ebp - 0x290], 0
mov eax, dword [ebp - 0x290]
mov dword [0x100a5144], eax
movzx eax, word [0x100a510c]
cdq
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
sub ecx, eax
sbb esi, edx
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
sub edx, ecx
sbb eax, esi
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x740]
add ecx, dword [ebp - 0x160]
mov dword [ebp - 0x294], ecx
mov edx, dword [ebp - 0x298]
imul edx, dword [ebp - 0x294]
mov eax, dword [ebp - 0x294]
add eax, dword [ebp - 0x298]
cmp edx, eax
je 0x100387ae
mov dword [0x100a5144], 4
movzx ecx, byte [ebp - 5]
imul edx, ecx, 0x7b43
movsx eax, byte [0x100a5026]
sub eax, edx
mov byte [0x100a5026], al
mov ecx, dword [0x100a5158]
and ecx, 0x558d4da2
mov dword [ebp - 0x30], ecx
movzx eax, byte [ebp - 1]
cdq
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
mov edx, 0xfd
mov word [0x100a513c], dx
movzx eax, word [ebp - 0x10]
sub eax, 0x3225
movzx ecx, byte [ebp - 4]
imul ecx, eax
mov byte [ebp - 4], cl
movsx edx, word [0x100a5138]
movsx eax, byte [ebp - 3]
imul edx, eax
mov word [0x100a5138], dx
mov ecx, dword [0x100a5144]
mov dword [ebp - 0x29c], ecx
cmp dword [ebp - 0x29c], 4
ja case.default.0x10033223
mov edx, dword [ebp - 0x29c]
jmp dword [edx*4 + 0x1003a158]
movsx eax, byte [ebp - 3]
test eax, eax
je 0x10033245
movzx eax, word [ebp - 0xc]
cdq
mov dword [ebp - 0x538], eax
mov dword [ebp - 0x534], edx
jmp 0x10033257
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x538], ecx
mov dword [ebp - 0x534], edx
mov eax, dword [ebp - 0x538]
mov dword [0x100a5108], eax
mov cx, word [ebp - 0x10]
sub cx, 1
mov word [ebp - 0x10], cx
mov edx, dword [0x100a50f0]
mov eax, dword [0x100a50f4]
push 0
push 0x3ab4
push eax
push edx
call fcn.10073670
mov word [0x100a50fc], ax
movzx eax, word [0x100a512c]
cdq
mov ecx, eax
mov edx, dword [0x100a50f0]
mov eax, dword [0x100a50f4]
mov dword [ebp - 0xdf0], eax
sub ecx, edx
movzx eax, word [0x100a512c]
cdq
and eax, ecx
mov word [0x100a512c], ax
jmp case.default.0x10033223
mov ecx, dword [0x100a5100]
mov edx, dword [0x100a5104]
push 0
push 0xd484
push edx
push ecx
call fcn.10073670
mov word [ebp - 0x14], ax
movzx eax, word [0x100a5130]
mov ecx, dword [0x100a5144]
imul ecx, eax
mov dword [0x100a5144], ecx
mov dword [ebp - 0x30], 0xd0c5
jmp case.default.0x10033223
movsx edx, byte [ebp - 6]
mov eax, dword [ebp - 0x30]
sub eax, edx
mov word [0x100a515c], ax
movsx ecx, word [0x100a50dc]
test ecx, ecx
je 0x10033328
movzx edx, word [0x100a5128]
mov dword [ebp - 0x2a0], edx
jmp 0x10033332
movsx eax, byte [ebp - 6]
mov dword [ebp - 0x2a0], eax
mov cl, byte [ebp - 0x2a0]
mov byte [0x100a504b], cl
movzx edx, word [ebp - 0xc]
movsx eax, byte [ebp - 6]
sub edx, eax
mov word [ebp - 0xc], dx
jmp case.default.0x10033223
cmp dword [0x100a5158], 0
jne 0x1003336e
xor ecx, ecx
mov dword [ebp - 0x540], 1
mov dword [ebp - 0x53c], ecx
jmp 0x10033379
xorps xmm0, xmm0
movlpd qword [ebp - 0x540], xmm0
movsx eax, word [0x100a50fc]
movzx edx, word [0x100a510c]
imul eax, edx
cdq
mov esi, eax
mov edi, edx
xor eax, eax
mov ecx, dword [0x100a5100]
mov edx, dword [0x100a5104]
xor ecx, dword [0x100a5108]
xor edx, eax
add esi, ecx
adc edi, edx
mov ecx, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x34]
sub ecx, dword [ebp - 0x540]
sbb ebx, dword [ebp - 0x53c]
movzx eax, byte [ebp - 4]
cdq
push edx
push eax
push ebx
push ecx
call fcn.10073670
push edx
push eax
push edi
push esi
call fcn.10073670
not eax
mov dword [ebp - 0x44], eax
movzx eax, word [0x100a510c]
cdq
add eax, dword [0x100a5150]
adc edx, dword [0x100a5154]
mov dword [ebp - 0x924], eax
mov dword [ebp - 0x920], edx
mov edx, dword [ebp - 0x924]
or edx, dword [ebp - 0x920]
jne 0x10033411
mov dword [ebp - 0x2a4], 1
jmp 0x1003341b
mov dword [ebp - 0x2a4], 0
mov eax, dword [0x100a50e8]
imul eax, dword [ebp - 0x2a4]
mov word [0x100a5140], ax
mov ecx, dword [0x100a5100]
mov edx, dword [0x100a5104]
mov dword [ebp - 0xdf4], edx
sub ecx, 0xba1107b5
mov dword [ebp - 0x2c], ecx
movzx eax, word [ebp - 0x14]
cdq
mov ecx, eax
add ecx, dword [ebp - 0x40]
movzx eax, word [ebp - 0x14]
cdq
add eax, ecx
mov word [ebp - 0x14], ax
mov edx, dword [0x100a5100]
mov eax, dword [0x100a5104]
mov dword [ebp - 0xdf8], eax
add edx, 0x22854bf6
mov byte [ebp - 2], dl
jmp case.default.0x10033223
movzx ecx, word [0x100a510c]
xor ecx, 0xaf1d
mov byte [ebp - 6], cl
movsx eax, word [0x100a5138]
cdq
mov ecx, eax
mov edx, dword [0x100a5120]
mov eax, dword [0x100a5124]
mov dword [ebp - 0xdfc], eax
sub ecx, edx
movsx eax, word [0x100a5138]
cdq
add eax, ecx
mov word [0x100a5138], ax
movzx ecx, byte [ebp - 2]
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x44]
sub edx, 0xdf90
mov dword [0x100a50f8], edx
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [ebp - 0x2a8], eax
cmp dword [ebp - 0x2a8], 0
je 0x10033509
mov eax, dword [ebp - 0x2a8]
push eax
call dword [sym.imp.USER32.dll_GetMenu]
mov dword [ebp - 0x744], eax
push 1
mov ecx, dword [ebp - 0x744]
push ecx
call dword [sym.imp.USER32.dll_GetSubMenu]
mov dword [ebp - 0xe00], eax
mov edx, dword [0x100a5bfc]
mov dword [ebp - 0x164], edx
movsx eax, word [0x100a50ec]
movzx ecx, byte [str._NgcSignWithUserIdK]
imul eax, ecx
movsx edx, word [0x100a50ec]
or edx, eax
mov word [0x100a50ec], dx
mov ax, word [ebp - 0xc]
add ax, 1
mov word [ebp - 0xc], ax
movsx eax, word [0x100a5140]
cdq
mov dword [0x100a5110], eax
mov dword [0x100a5114], edx
mov ecx, dword [ebp - 0x164]
add ecx, 0x2f4
mov dword [ebp - 0x2f8], ecx
movsx edx, byte [ebp - 6]
sub edx, 0x2cec37e
xor eax, eax
mov dword [0x100a5100], edx
mov dword [0x100a5104], eax
movzx eax, byte [ebp - 2]
add eax, 0xd3
cdq
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x44], 0x297
mov ecx, dword [ebp - 0x164]
add ecx, 0x517
mov dword [ebp - 0xe04], ecx
mov byte [ebp - 7], 3
mov edx, dword [0x100a5120]
mov eax, dword [0x100a5124]
add edx, 1
adc eax, 0
mov dword [0x100a5120], edx
mov dword [0x100a5124], eax
mov ecx, dword [0x100a5118]
mov edx, dword [0x100a511c]
mov dword [ebp - 0xe08], edx
add ecx, 0x80f4ce05
mov byte [ebp - 6], cl
cmp dword [ebp - 0x4c], 0
je 0x100335f4
movzx eax, byte [ebp - 1]
mov dword [ebp - 0x2ac], eax
jmp 0x10033601
movsx ecx, word [0x100a515c]
mov dword [ebp - 0x2ac], ecx
mov dl, byte [ebp - 0x2ac]
mov byte [ebp - 7], dl
movzx eax, byte [ebp - 7]
mov dword [ebp - 0x2b0], eax
cmp dword [ebp - 0x2b0], 3
ja case.default.0x10033627
mov ecx, dword [ebp - 0x2b0]
jmp dword [ecx*4 + 0x1003a16c]
mov edx, 8
mov word [0x100a510c], dx
movzx eax, word [0x100a5130]
xor eax, 0x373460dd
cdq
mov dword [0x100a5120], eax
mov dword [0x100a5124], edx
movzx eax, word [0x100a510c]
sub eax, 0x9c26
mov word [0x100a512c], ax
mov ecx, dword [0x100a5100]
mov edx, dword [0x100a5104]
and ecx, 0xe30df25b
and edx, 0
mov dword [0x100a5150], ecx
mov dword [0x100a5154], edx
mov eax, dword [0x100a50f0]
mov ecx, dword [0x100a50f4]
push 0
push 0x40b23b4b
push ecx
push eax
call fcn.10073670
mov dword [0x100a5100], eax
mov dword [0x100a5104], edx
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0xe0c], eax
xor edx, 0x2462152b
mov dword [0x100a50f8], edx
jmp case.default.0x10033627
mov ecx, 0xcd1
mov word [ebp - 0x14], cx
movsx edx, word [0x100a50ec]
add edx, 0xe004
movzx eax, word [ebp - 0xc]
imul eax, edx
mov word [ebp - 0xc], ax
mov ecx, 4
imul edx, ecx, 0x737
mov eax, dword [edx + 0x10126b28]
cdq
mov dword [0x100a50f0], eax
mov dword [0x100a50f4], edx
mov eax, dword [ebp - 0x44]
add eax, 0x2f4
mov byte [ebp - 2], al
movzx ecx, byte [str._NgcSignWithUserIdK]
test ecx, ecx
jne 0x10033726
mov dword [ebp - 0x2b4], 1
jmp 0x10033730
mov dword [ebp - 0x2b4], 0
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x92c], edx
mov dword [ebp - 0x928], eax
mov ecx, dword [ebp - 0x92c]
or ecx, dword [ebp - 0x928]
jne 0x1003375c
mov dword [ebp - 0x2b8], 1
jmp 0x10033766
mov dword [ebp - 0x2b8], 0
movsx edx, word [0x100a50ec]
test edx, edx
jne 0x1003377d
mov dword [ebp - 0x2bc], 1
jmp 0x10033787
mov dword [ebp - 0x2bc], 0
movzx eax, byte [0x100a503b]
mov ecx, dword [ebp - 0x2b4]
xor ecx, dword [ebp - 0x2b8]
add eax, ecx
movzx edx, byte [ebp - 2]
movzx ecx, byte [str._NgcSignWithUserIdK]
sub edx, ecx
mov ecx, dword [ebp - 0x2bc]
sub ecx, edx
add eax, ecx
mov byte [ebp - 1], al
jmp case.default.0x10033627
movsx edx, word [0x100a50fc]
movzx eax, byte [ebp - 2]
lea ecx, [eax + edx - 0x394e25a4]
mov byte [ebp - 2], cl
movzx edx, word [ebp - 0x14]
sar edx, 4
mov byte [0x100a504b], dl
movzx eax, byte [ebp - 5]
mov ecx, dword [ebp - 0x30]
sub ecx, eax
mov dword [ebp - 0x30], ecx
mov edx, dword [0x100a5bfc]
mov dword [0x100a50e8], edx
mov eax, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
mov cl, 6
call fcn.100736d0
mov byte [ebp - 3], al
jmp case.default.0x10033627
movsx eax, word [0x100a5138]
movzx ecx, byte [ebp - 7]
or eax, ecx
movsx edx, word [0x100a5134]
or eax, edx
mov word [ebp - 0x10], ax
mov eax, dword [0x100a5110]
mov ecx, dword [0x100a5114]
mov dword [ebp - 0xe10], ecx
add eax, 0xef9b7e47
mov dword [ebp - 0x44], eax
movzx edx, byte [ebp - 2]
add edx, 0xf5
movzx eax, byte [ebp - 1]
or eax, edx
mov byte [ebp - 1], al
movsx eax, word [0x100a5138]
movsx ecx, word [0x100a5138]
imul eax, ecx
cdq
sub eax, dword [ebp - 0x40]
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xe14], ecx
xor edx, eax
mov byte [ebp - 2], dl
mov edx, dword [0x100a5158]
xor edx, dword [ebp - 0x44]
mov ecx, edx
movzx eax, word [0x100a512c]
cdq
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov dword [ebp - 0xe18], esi
add eax, edx
not eax
add ecx, eax
add ecx, 0x38
mov word [0x100a50fc], cx
mov eax, dword [ebp - 0x164]
add eax, 0x49a
mov dword [ebp - 0x2fc], eax
xor ecx, ecx
mov byte [ebp - 0x10d], cl
mov byte [ebp - 0xf4], 0x20
xor edx, edx
mov byte [ebp - 0xf3], dl
mov eax, 0x18
mov word [ebp - 0xf2], ax
mov ecx, 0x16
mov word [ebp - 0xf0], cx
mov edx, 0xd
mov word [ebp - 0xee], dx
xor eax, eax
mov word [ebp - 0xec], ax
mov dword [ebp - 0xd8], 0
jmp 0x10033915
mov ecx, dword [ebp - 0xd8]
add ecx, 1
mov dword [ebp - 0xd8], ecx
cmp dword [ebp - 0xd8], 3
jae 0x1003396f
mov edx, dword [ebp - 0xd8]
lea eax, [ebp + edx*2 - 0xf2]
mov dword [ebp - 0x748], eax
mov ecx, dword [ebp - 0x748]
movzx edx, word [ecx]
movsx eax, byte [ebp - 0xf4]
xor edx, eax
mov word [ebp - 0x11e], dx
mov ecx, dword [ebp - 0xd8]
lea edx, [ebp + ecx*2 - 0xf2]
mov dword [ebp - 0x74c], edx
mov eax, dword [ebp - 0x74c]
mov cx, word [ebp - 0x11e]
mov word [eax], cx
jmp 0x10033906
mov edx, 3
shl edx, 1
lea eax, [ebp + edx - 0xf2]
mov dword [ebp - 0x750], eax
xor ecx, ecx
mov edx, dword [ebp - 0x750]
mov word [edx], cx
lea eax, [ebp - 0xf2]
mov dword [ebp - 0x754], eax
mov ecx, dword [ebp - 0x754]
push ecx
lea edx, [ebp - 0x1540]
push edx
push 0
push 0
call fcn.10001320
call eax
lea eax, [ebp - 0x1950]
push eax
lea ecx, [ebp - 0x1540]
push ecx
push 0
push 0
call fcn.10001320
call eax
xor edx, edx
mov byte [ebp - 0x10e], dl
mov byte [ebp - 0x19c], 0x36
xor eax, eax
mov byte [ebp - 0x19b], al
mov ecx, 0x18
mov word [ebp - 0x19a], cx
mov edx, 0x52
mov word [ebp - 0x198], dx
mov eax, 0x5a
mov word [ebp - 0x196], ax
mov ecx, 0x5a
mov word [ebp - 0x194], cx
xor edx, edx
mov word [ebp - 0x192], dx
mov dword [ebp - 0x88], 0
jmp 0x10033a37
mov eax, dword [ebp - 0x88]
add eax, 1
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 4
jae 0x10033a91
mov ecx, dword [ebp - 0x88]
lea edx, [ebp + ecx*2 - 0x19a]
mov dword [ebp - 0x758], edx
mov eax, dword [ebp - 0x758]
movzx ecx, word [eax]
movsx edx, byte [ebp - 0x19c]
xor ecx, edx
mov word [ebp - 0x120], cx
mov eax, dword [ebp - 0x88]
lea ecx, [ebp + eax*2 - 0x19a]
mov dword [ebp - 0x75c], ecx
mov edx, dword [ebp - 0x75c]
mov ax, word [ebp - 0x120]
mov word [edx], ax
jmp 0x10033a28
mov ecx, 4
shl ecx, 1
lea edx, [ebp + ecx - 0x19a]
mov dword [ebp - 0x760], edx
xor eax, eax
mov ecx, dword [ebp - 0x760]
mov word [ecx], ax
lea edx, [ebp - 0x19a]
mov dword [ebp - 0x764], edx
mov eax, dword [ebp - 0x764]
push eax
lea ecx, [ebp - 0x1540]
push ecx
push 0
push 0
call fcn.10001320
call eax
xor edx, edx
mov dword [0x100a5120], 0x3c1d
mov dword [0x100a5124], edx
mov eax, dword [0x100a5100]
mov ecx, dword [0x100a5104]
mov dword [ebp - 0xe1c], ecx
add eax, 0x28
mov dword [0x100a5144], eax
movzx edx, byte [ebp - 7]
sub edx, 0x23a512bb
mov word [ebp - 0x10], dx
movzx eax, word [ebp - 0x14]
movzx ecx, byte [ebp - 2]
lea edx, [ecx + eax + 0xc0f0]
mov byte [ebp - 2], dl
movzx eax, word [0x100a5148]
cdq
xor ecx, ecx
mov esi, dword [0x100a5120]
mov edi, dword [0x100a5124]
add esi, dword [ebp - 0x2c]
adc edi, ecx
mov dword [ebp - 0x934], eax
mov dword [ebp - 0x930], edx
mov dword [ebp - 0x93c], esi
mov dword [ebp - 0x938], edi
mov edx, dword [ebp - 0x934]
cmp edx, dword [ebp - 0x93c]
jne 0x10033c81
mov eax, dword [ebp - 0x930]
cmp eax, dword [ebp - 0x938]
jne 0x10033c81
mov eax, dword [ebp - 0x4c]
cdq
push 0x1a4d7
push 0xd5e18bc5
push edx
push eax
call fcn.10073670
mov ecx, dword [0x100a5108]
or ecx, eax
mov dword [0x100a5108], ecx
movsx edx, byte [ebp - 6]
imul edx, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x48]
add eax, 0x42fa0e18
mov word [ebp - 0x10], ax
movzx ecx, word [0x100a512c]
imul edx, ecx, 0x6f
mov word [0x100a5138], dx
mov eax, 0x6b1
mov word [0x100a5128], ax
mov ecx, dword [0x100a5bfc]
xor edx, edx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x30]
add eax, 1
mov dword [ebp - 0x30], eax
movzx ecx, byte [0x100a503b]
movzx edx, word [ebp - 0x14]
add edx, 0x5f
cmp ecx, edx
jne 0x10033c81
movzx eax, byte [ebp - 5]
sar eax, 7
mov word [ebp - 0x14], ax
jmp 0x10033ad5
mov dword [ebp - 0x168], 0
jmp 0x10033c9c
mov edx, dword [ebp - 0x168]
add edx, 1
mov dword [ebp - 0x168], edx
cmp dword [ebp - 0x168], 0x300
jge 0x10033d01
mov dword [ebp - 0x16c], 0
jmp 0x10033cc3
mov eax, dword [ebp - 0x16c]
add eax, 2
mov dword [ebp - 0x16c], eax
cmp dword [ebp - 0x16c], 0x86
jge 0x10033cef
mov ecx, dword [0x100a5110]
mov edx, dword [0x100a5114]
add ecx, 1
adc edx, 0
mov dword [0x100a5110], ecx
mov dword [0x100a5114], edx
jmp 0x10033cb4
mov ax, word [0x100a510c]
add ax, 1
mov word [0x100a510c], ax
jmp 0x10033c8d
mov ecx, 0x33d
sub ecx, dword [ebp - 0x2c0]
cmp dword [ebp - 0x2c0], ecx
je 0x100387ae
movzx edx, word [ebp - 0x10]
cmp dword [ebp - 0x30], edx
jne 0x10033d2d
mov dword [ebp - 0x2c4], 1
jmp 0x10033d37
mov dword [ebp - 0x2c4], 0
cmp dword [ebp - 0x30], 0x27
jne 0x10033d49
mov dword [ebp - 0x2c8], 1
jmp 0x10033d53
mov dword [ebp - 0x2c8], 0
mov eax, dword [ebp - 0x2c4]
cmp eax, dword [ebp - 0x2c8]
jg 0x10033d72
movzx ecx, word [ebp - 0x18]
push ecx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov word [0x100a5140], ax
mov edx, dword [0x100a50f0]
mov eax, dword [0x100a50f4]
mov dword [ebp - 0x944], edx
mov dword [ebp - 0x940], eax
mov ecx, dword [ebp - 0x944]
or ecx, dword [ebp - 0x940]
je 0x10033da3
movzx edx, byte [ebp - 2]
mov dword [ebp - 0x2cc], edx
jmp 0x10033dac
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x2cc], eax
mov cl, byte [ebp - 0x2cc]
mov byte [ebp - 4], cl
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0xe20], eax
add edx, 0xb1f282dd
mov word [0x100a5140], dx
mov ecx, dword [0x100a5bfc]
mov dword [ebp - 0x170], ecx
movzx edx, byte [str._NgcSignWithUserIdK]
sub edx, 0x6929491e
xor eax, eax
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
xor ecx, edx
xor esi, eax
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], esi
mov dx, word [0x100a5134]
sub dx, 1
mov word [0x100a5134], dx
mov ax, word [0x100a5bfc]
mov word [0x100a5138], ax
mov ecx, dword [0x100a50f0]
mov edx, dword [0x100a50f4]
add ecx, 1
adc edx, 0
mov dword [0x100a50f0], ecx
mov dword [0x100a50f4], edx
mov eax, dword [ebp - 0x170]
add eax, 0x6518
mov dword [ebp - 0x2f4], eax
movsx ecx, byte [ebp - 3]
not ecx
movsx edx, word [0x100a50ec]
imul ecx, edx
mov word [0x100a5130], cx
mov eax, dword [ebp - 0x30]
xor ecx, ecx
mov edx, dword [0x100a5110]
mov esi, dword [0x100a5114]
push esi
push edx
push ecx
push eax
call fcn.10073670
mov dword [ebp - 0x30], eax
mov eax, 0x10
mov word [0x100a50ec], ax
mov ecx, dword [ebp - 0x44]
add ecx, 0xdf
mov byte [ebp - 2], cl
movsx edx, word [0x100a5138]
imul eax, edx, 0xab803187
mov byte [ebp - 5], al
mov ecx, dword [ebp - 0x170]
add ecx, 0x31b
mov dword [ebp - 0xe24], ecx
movsx edx, word [0x100a50ec]
test edx, edx
je 0x10034372
movzx eax, word [ebp - 0x14]
movzx ecx, byte [str._NgcSignWithUserIdK]
cmp eax, ecx
jle 0x10033edd
mov dword [ebp - 0x2d0], 1
jmp 0x10033ee7
mov dword [ebp - 0x2d0], 0
movzx eax, byte [ebp - 7]
not eax
cdq
mov dword [ebp - 0x94c], eax
mov dword [ebp - 0x948], edx
cmp dword [ebp - 0x948], 0x72327
jg 0x10033f20
jl 0x10033f14
cmp dword [ebp - 0x94c], 0x7c32be86
ja 0x10033f20
mov dword [ebp - 0x2d4], 1
jmp 0x10033f2a
mov dword [ebp - 0x2d4], 0
mov edx, dword [ebp - 0x2d0]
cmp edx, dword [ebp - 0x2d4]
jl 0x10033f44
mov dword [ebp - 0x2d8], 1
jmp 0x10033f4e
mov dword [ebp - 0x2d8], 0
movsx eax, byte [ebp - 3]
movzx ecx, word [ebp - 0xc]
not ecx
sub ecx, 0x41609d05
not ecx
imul eax, ecx
not eax
cmp eax, dword [ebp - 0x2d8]
jl 0x100341c8
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
movzx eax, word [ebp - 0x10]
cdq
mov dword [ebp - 0x954], ecx
mov dword [ebp - 0x950], esi
mov dword [ebp - 0x95c], eax
mov dword [ebp - 0x958], edx
mov edx, dword [ebp - 0x954]
cmp edx, dword [ebp - 0x95c]
jne 0x10033fbc
mov eax, dword [ebp - 0x950]
cmp eax, dword [ebp - 0x958]
jne 0x10033fbc
mov dword [ebp - 0x2dc], 1
jmp 0x10033fc6
mov dword [ebp - 0x2dc], 0
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x964], ecx
mov dword [ebp - 0x960], edx
cmp dword [ebp - 0x964], 0x2b
jne 0x10033ff6
cmp dword [ebp - 0x960], 0
jne 0x10033ff6
mov dword [ebp - 0x2e0], 1
jmp 0x10034000
mov dword [ebp - 0x2e0], 0
mov eax, dword [ebp - 0x2dc]
cmp eax, dword [ebp - 0x2e0]
jge 0x10034104
movsx ecx, word [0x100a515c]
cmp dword [ebp - 0x30], ecx
je 0x100340c6
movsx edx, byte [ebp - 6]
imul eax, edx, 0x4a
mov word [0x100a5134], ax
mov eax, dword [0x100a50f8]
cdq
mov ecx, eax
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xe28], eax
xor ecx, edx
mov eax, dword [0x100a50f8]
cdq
add eax, ecx
mov dword [0x100a50f8], eax
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0xe2c], edx
sub ecx, 0xbf0b
mov dword [0x100a50e8], ecx
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x96c], eax
mov dword [ebp - 0x968], ecx
mov edx, dword [ebp - 0x96c]
or edx, dword [ebp - 0x968]
jne 0x10034096
mov dword [ebp - 0x2e4], 1
jmp 0x100340a0
mov dword [ebp - 0x2e4], 0
movsx eax, word [0x100a5138]
imul eax, dword [ebp - 0x2e4]
mov byte [0x100a503b], al
movzx ecx, word [ebp - 0xc]
movsx edx, word [0x100a50fc]
xor ecx, edx
mov word [ebp - 0xc], cx
jmp 0x100340ff
mov eax, 0x7d95
mov word [0x100a50fc], ax
mov cx, word [ebp - 0xc]
sub cx, 1
mov word [ebp - 0xc], cx
movzx edx, word [ebp - 0xc]
movzx eax, byte [ebp - 4]
sub edx, eax
mov word [ebp - 0xc], dx
mov ecx, 4
imul edx, ecx, 0x3371
mov eax, dword [edx + 0x10300130]
mov dword [ebp - 0x4c], eax
jmp 0x100341c3
movzx eax, byte [ebp - 4]
cdq
mov ecx, dword [ebp - 0x40]
sub ecx, eax
mov eax, dword [ebp - 0x3c]
sbb eax, edx
add ecx, dword [ebp - 0x40]
adc eax, dword [ebp - 0x3c]
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x3c], eax
movzx ecx, word [ebp - 0xc]
add ecx, dword [0x100a5158]
xor edx, edx
mov eax, dword [ebp - 0x2c]
xor esi, esi
add eax, 0xa8fb43c2
adc esi, 0xfffbd28f
push esi
push eax
push edx
push ecx
call fcn.10073670
mov ecx, eax
mov esi, edx
mov edi, dword [ebp - 0x40]
sub edi, 0x1b767b57
mov ebx, dword [ebp - 0x3c]
sbb ebx, 0x98196
movsx eax, byte [0x100a5026]
movzx edx, word [0x100a5148]
sub eax, edx
cdq
sub edi, eax
sbb ebx, edx
not edi
not ebx
or ecx, edi
or esi, ebx
mov dword [0x100a5120], ecx
mov dword [0x100a5124], esi
mov eax, dword [0x100a5108]
add eax, dword [0x100a50f8]
mov dword [0x100a5108], eax
mov ecx, dword [ebp - 0x44]
mov edx, dword [0x100a50f0]
mov eax, dword [0x100a50f4]
mov dword [ebp - 0xe30], eax
sub edx, ecx
mov word [0x100a512c], dx
movzx eax, byte [ebp - 2]
add eax, 0x65
cdq
mov dword [0x100a50f0], eax
mov dword [0x100a50f4], edx
jmp 0x10034372
cmp dword [0x100a50e8], 0
je 0x100342b7
mov ecx, dword [0x100a5bfc]
xor edx, edx
mov dword [0x100a5150], ecx
mov dword [0x100a5154], edx
movzx eax, byte [0x100a503b]
mov ecx, dword [0x100a5108]
add ecx, eax
mov esi, ecx
xor edi, edi
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
push 0xeb3bf
push 0x1f6d3f2b
push eax
push edx
call fcn.10073670
add esi, eax
adc edi, edx
mov dword [ebp - 0x974], esi
mov dword [ebp - 0x970], edi
mov ecx, dword [ebp - 0x974]
or ecx, dword [ebp - 0x970]
jne 0x1003423d
mov dword [ebp - 0x2e8], 1
jmp 0x10034247
mov dword [ebp - 0x2e8], 0
imul edx, dword [0x100a5108], 0x9dcdaf11
movzx eax, word [0x100a5128]
not eax
movsx ecx, word [0x100a5140]
add eax, ecx
add edx, eax
sub edx, dword [ebp - 0x2e8]
mov byte [ebp - 4], dl
mov ecx, dword [0x100a50e0]
add ecx, 0xfbf1959f
movsx eax, byte [ebp - 3]
cdq
sub eax, ecx
mov byte [ebp - 3], al
movsx eax, byte [0x100a5026]
cdq
mov ecx, dword [0x100a50f0]
mov esi, dword [0x100a50f4]
push esi
push ecx
push edx
push eax
call fcn.10073670
mov ecx, eax
movsx eax, byte [0x100a5026]
cdq
sub eax, ecx
mov byte [0x100a5026], al
jmp 0x10034372
mov edx, 1
test edx, edx
je 0x10034372
movsx eax, word [0x100a50fc]
test eax, eax
jne 0x100342db
mov dword [ebp - 0x2ec], 1
jmp 0x100342e5
mov dword [ebp - 0x2ec], 0
cmp dword [ebp - 0x30], 0
jne 0x100342f7
mov dword [ebp - 0x2f0], 1
jmp 0x10034301
mov dword [ebp - 0x2f0], 0
movsx ecx, byte [ebp - 3]
mov edx, dword [ebp - 0x2ec]
imul edx, dword [ebp - 0x2f0]
add ecx, edx
mov word [ebp - 0x10], cx
movzx eax, word [ebp - 0x10]
test eax, eax
je 0x10034334
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x548], ecx
mov dword [ebp - 0x544], edx
jmp 0x10034348
movzx eax, byte [0x100a503b]
cdq
mov dword [ebp - 0x548], eax
mov dword [ebp - 0x544], edx
mov ax, word [ebp - 0x548]
mov word [0x100a50ec], ax
movsx ecx, word [0x100a50ec]
imul edx, ecx, 0x65
mov word [ebp - 0x14], dx
movzx eax, byte [ebp - 1]
add eax, dword [0x100a50f8]
mov dword [0x100a50f8], eax
mov ecx, dword [ebp - 0x170]
add ecx, 0x1bb8
mov dword [ebp - 0xe34], ecx
xor edx, edx
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
sub eax, dword [0x100a5158]
sbb ecx, edx
mov edx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
push ecx
push eax
push esi
push edx
call fcn.10073670
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
mov edx, 4
imul eax, edx, 0x13
mov cl, byte [eax + 0x100db7f8]
mov byte [ebp - 4], cl
movsx edx, word [0x100a515c]
sub edx, 0x5db9a717
mov byte [ebp - 1], dl
movzx eax, byte [ebp - 2]
movzx ecx, byte [0x100a503b]
sub eax, ecx
mov byte [ebp - 2], al
movzx edx, byte [str._NgcSignWithUserIdK]
imul eax, edx, 0xbe0aed35
movsx ecx, word [0x100a5140]
or ecx, eax
mov word [0x100a5140], cx
mov dl, byte [0x100a50e0]
mov byte [ebp - 1], dl
movzx eax, byte [ebp - 5]
movsx ecx, word [0x100a50dc]
imul eax, ecx
movzx edx, byte [ebp - 5]
sub edx, eax
mov byte [ebp - 5], dl
mov eax, dword [ebp - 0x2f4]
or eax, dword [ebp - 0x2f4]
xor eax, 0x6163
mov ecx, dword [ebp - 0x2fc]
sub ecx, dword [ebp - 0x2f8]
mov edx, dword [ebp - 0x2f8]
sub edx, dword [ebp - 0x2fc]
add ecx, edx
sub eax, ecx
mov dword [ebp - 0x768], eax
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
push 0
push 0xbccb
push ecx
push eax
call fcn.10073670
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
movsx edx, byte [ebp - 6]
movsx eax, word [0x100a513c]
imul edx, eax
movsx ecx, byte [ebp - 6]
add ecx, edx
mov byte [ebp - 6], cl
movzx edx, word [0x100a510c]
movzx eax, word [ebp - 0xc]
movzx ecx, byte [0x100a503b]
imul eax, ecx
add edx, eax
mov word [0x100a512c], dx
mov edx, dword [ebp - 0x44]
not edx
sub edx, dword [0x100a5144]
mov eax, dword [0x100a5110]
mov ecx, dword [0x100a5114]
mov dword [ebp - 0xe38], ecx
sub eax, edx
mov word [0x100a50dc], ax
lea edx, [ebp - 0x1540]
push edx
mov eax, dword [0x10318490]
push eax
call fcn.1003f360
test eax, eax
je 0x10035a28
mov ecx, dword [0x100a5110]
mov esi, dword [0x100a5114]
movzx eax, word [0x100a5130]
cdq
mov dword [ebp - 0x97c], ecx
mov dword [ebp - 0x978], esi
mov dword [ebp - 0x984], eax
mov dword [ebp - 0x980], edx
mov edx, dword [ebp - 0x97c]
cmp edx, dword [ebp - 0x984]
jne 0x1003452f
mov eax, dword [ebp - 0x978]
cmp eax, dword [ebp - 0x980]
jne 0x1003452f
jmp 0x10034601
cmp dword [ebp - 0x2c], 0
je 0x10034601
mov dword [ebp - 0x48], 0x699f6297
mov cx, word [0x100a515c]
add cx, 1
mov word [0x100a515c], cx
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x98c], edx
mov dword [ebp - 0x988], eax
mov ecx, dword [ebp - 0x98c]
or ecx, dword [ebp - 0x988]
je 0x1003457e
movzx edx, byte [ebp - 4]
mov dword [ebp - 0x300], edx
jmp 0x10034587
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x300], eax
mov ecx, dword [ebp - 0x300]
mov dword [ebp - 0x4c], ecx
mov edx, dword [0x100a5150]
sub edx, 1
mov eax, dword [0x100a5154]
sbb eax, 0
mov dword [0x100a5150], edx
mov dword [0x100a5154], eax
xor ecx, ecx
mov dword [ebp - 0x40], 0xe530596a
mov dword [ebp - 0x3c], ecx
cmp dword [0x100a50f8], 0
jne 0x100345cd
mov dword [ebp - 0x304], 1
jmp 0x100345d7
mov dword [ebp - 0x304], 0
mov edx, dword [ebp - 0x2c]
xor edx, dword [ebp - 0x304]
mov eax, dword [ebp - 0x48]
imul eax, dword [ebp - 0x2c]
add edx, eax
mov ecx, dword [0x100a5100]
mov eax, dword [0x100a5104]
mov dword [ebp - 0xe3c], eax
xor edx, ecx
not edx
mov byte [ebp - 5], dl
movzx ecx, word [0x100a510c]
movsx edx, byte [ebp - 6]
movzx eax, byte [ebp - 1]
add edx, eax
add ecx, edx
jne 0x10034624
mov ecx, 1
mov word [ebp - 0x9a], cx
jmp 0x1003462d
xor edx, edx
mov word [ebp - 0x9a], dx
mov ax, word [ebp - 0x9a]
mov word [0x100a510c], ax
movzx eax, word [ebp - 0x14]
cdq
push 0x473a1
push 0x9a3a0aec
push edx
push eax
call fcn.10073670
mov byte [ebp - 3], al
movsx ecx, byte [ebp - 6]
sar ecx, 8
mov byte [0x100a5026], cl
mov edx, 2
mov word [0x100a5140], dx
movzx eax, word [ebp - 0x18]
cdq
mov ecx, dword [0x100a5120]
mov esi, dword [0x100a5124]
push edx
push eax
push esi
push ecx
call fcn.10073670
mov ecx, dword [0x100a5120]
mov esi, dword [0x100a5124]
add ecx, eax
adc esi, edx
mov dword [0x100a5120], ecx
mov dword [0x100a5124], esi
mov edx, dword [0x100a5bfc]
mov dword [ebp - 0x178], edx
movzx eax, word [ebp - 0x18]
test eax, eax
je 0x100349e0
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
movsx eax, word [0x100a5138]
cdq
mov dword [ebp - 0x994], ecx
mov dword [ebp - 0x990], esi
mov dword [ebp - 0x99c], eax
mov dword [ebp - 0x998], edx
mov edx, dword [ebp - 0x990]
cmp edx, dword [ebp - 0x998]
ja 0x10034987
jb 0x10034706
mov eax, dword [ebp - 0x994]
cmp eax, dword [ebp - 0x99c]
ja 0x10034987
mov dword [ebp - 0x174], 0x1801
movzx eax, byte [ebp - 5]
cdq
push 0xefb94
push 0xc7dda625
push edx
push eax
call fcn.10073670
mov ecx, eax
movzx eax, byte [ebp - 7]
cdq
and eax, ecx
mov byte [ebp - 7], al
mov dl, byte [ebp - 3]
add dl, 1
mov byte [ebp - 3], dl
mov eax, dword [0x100a5bfc]
xor ecx, ecx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x174], 0x1632
jle 0x10034985
mov edx, dword [ebp - 0x4c]
not edx
test edx, edx
jne 0x1003479d
movzx eax, word [0x100a5148]
test eax, eax
jne 0x10034778
mov dword [ebp - 0x308], 1
jmp 0x10034782
mov dword [ebp - 0x308], 0
movsx ecx, word [0x100a515c]
cmp dword [ebp - 0x308], ecx
jl 0x1003479d
mov dword [ebp - 0x30c], 1
jmp 0x100347a7
mov dword [ebp - 0x30c], 0
mov edx, dword [ebp - 0x40]
or edx, dword [ebp - 0x3c]
jne 0x100347da
mov eax, 0x84fa7424
or eax, 0x3c2e0
je 0x100347da
mov ecx, 0x3384
test ecx, ecx
je 0x100347da
movzx edx, word [ebp - 0x18]
not edx
test edx, edx
je 0x100347da
mov dword [ebp - 0x310], 0
mov eax, dword [ebp - 0x30c]
cmp eax, dword [ebp - 0x310]
jg 0x1003481b
mov ecx, 9
mov esi, str.Windows.Security.C
lea edi, [ebp - 0xf1c]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea ecx, [ebp - 0xf1c]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov byte [ebp - 7], al
jmp 0x10034971
movzx edx, byte [ebp - 5]
cmp dword [ebp - 0x30], edx
jbe 0x10034830
mov dword [ebp - 0x314], 1
jmp 0x1003483a
mov dword [ebp - 0x314], 0
mov eax, dword [ebp - 0x314]
not eax
test eax, eax
je 0x100348ce
mov edx, dword [ebp - 0x174]
sub edx, 1
mov dword [ebp - 0x174], edx
jmp 0x10034748
jmp 0x100349db
mov eax, dword [ebp - 0x48]
xor eax, dword [0x100a5144]
movzx ecx, byte [ebp - 5]
add eax, ecx
mov esi, eax
movzx eax, byte [str._NgcSignWithUserIdK]
cdq
mov ecx, eax
mov edi, edx
movsx eax, word [0x100a50dc]
cdq
sub eax, 0x6590315b
sbb edx, 0x68f21
push edx
push eax
push edi
push ecx
call fcn.10073670
sub esi, eax
mov dword [ebp - 0x48], esi
mov dl, byte [0x100a5bfc]
mov byte [ebp - 7], dl
movsx eax, word [0x100a50fc]
sar eax, 3
mov byte [ebp - 4], al
jmp 0x10034a71
mov ecx, dword [ebp - 0x40]
or ecx, dword [ebp - 0x3c]
je 0x10034a71
movzx edx, word [ebp - 0x18]
test edx, edx
jne 0x10034a00
mov dword [ebp - 0x318], 1
jmp 0x10034a0a
mov dword [ebp - 0x318], 0
movzx eax, byte [0x100a503b]
imul eax, dword [ebp - 0x318]
movzx ecx, word [ebp - 0x18]
sub eax, ecx
mov dword [0x100a5144], eax
mov eax, dword [0x100a50f0]
mov edx, dword [0x100a50f4]
mov cl, 8
call fcn.100736b0
mov byte [str._NgcSignWithUserIdK], al
mov byte [ebp - 3], 0x18
mov edx, dword [0x100a50f0]
mov eax, dword [0x100a50f4]
mov dword [ebp - 0xe44], eax
xor edx, 0x59
mov word [0x100a510c], dx
movzx eax, word [0x100a5128]
add eax, 0xc5d
cdq
mov dword [0x100a5150], eax
mov dword [0x100a5154], edx
mov ecx, dword [ebp - 0x178]
add ecx, 0x4c7
mov dword [ebp - 0x340], ecx
movsx edx, word [0x100a50fc]
movzx eax, byte [ebp - 4]
sub edx, eax
jne 0x10034aa6
xor ecx, ecx
mov dword [ebp - 0x550], 1
mov dword [ebp - 0x54c], ecx
jmp 0x10034ab1
xorps xmm0, xmm0
movlpd qword [ebp - 0x550], xmm0
mov eax, dword [0x100a50f8]
cdq
mov ecx, dword [0x100a5120]
mov esi, dword [0x100a5124]
add ecx, dword [ebp - 0x550]
adc esi, dword [ebp - 0x54c]
push esi
push ecx
push edx
push eax
call fcn.10073670
mov word [ebp - 0x10], ax
mov edx, dword [0x100a5bfc]
xor eax, eax
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x44]
xor edx, edx
mov eax, dword [0x100a5114]
add ecx, dword [0x100a5110]
adc edx, eax
mov eax, dword [ebp - 0x44]
xor esi, esi
push edx
push ecx
push esi
push eax
call fcn.10073670
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x178]
add ecx, 0x4d2
mov dword [ebp - 0xe48], ecx
mov edx, 0x3e6cb
mov dword [0x100a50e0], 0xc0f2d707
mov dword [0x100a50e4], edx
movzx eax, word [ebp - 0x18]
sub eax, 0x73ae609e
mov word [0x100a5130], ax
mov ecx, dword [ebp - 0x2c]
sub ecx, 1
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x768]
add edx, dword [ebp - 0x178]
mov dword [ebp - 0x344], edx
xor eax, eax
mov dword [0x100a50f0], 0xe78f8fa4
mov dword [0x100a50f4], eax
call dword [sym.imp.USER32.dll_GetDialogBaseUnits]
mov dword [0x100a50e8], eax
mov ecx, dword [0x100a50f0]
mov edx, dword [0x100a50f4]
mov eax, dword [ebp - 0x2c]
add eax, 1
xor esi, esi
mov dword [ebp - 0x9ac], ecx
mov dword [ebp - 0x9a8], edx
mov dword [ebp - 0x9b4], eax
mov dword [ebp - 0x9b0], esi
mov ecx, dword [ebp - 0x9ac]
cmp ecx, dword [ebp - 0x9b4]
jne 0x10035182
mov edx, dword [ebp - 0x9a8]
cmp edx, dword [ebp - 0x9b0]
jne 0x10035182
movzx eax, word [ebp - 0xc]
cmp eax, dword [ebp - 0x48]
jne 0x10034bdf
mov dword [ebp - 0x31c], 1
jmp 0x10034be9
mov dword [ebp - 0x31c], 0
movzx ecx, word [ebp - 0xc]
cmp ecx, 0x2b
jne 0x10034bfe
mov dword [ebp - 0x320], 1
jmp 0x10034c08
mov dword [ebp - 0x320], 0
mov edx, dword [ebp - 0x31c]
cmp edx, dword [ebp - 0x320]
jge 0x10034ce3
movsx eax, word [0x100a5138]
sub eax, 0x50
mov ecx, dword [0x100a5144]
sub ecx, eax
mov dword [0x100a5144], ecx
movsx eax, word [0x100a5140]
xor eax, 0x2548
cdq
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
movzx edx, byte [ebp - 2]
movsx eax, byte [ebp - 3]
sub edx, eax
mov byte [ebp - 2], dl
mov ecx, 8
shl ecx, 1
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
sub edx, dword [ecx + 0x102024a0]
sbb eax, dword [ecx + 0x102024a4]
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], eax
movsx ecx, word [0x100a50dc]
imul ecx, dword [0x100a50f8]
add ecx, dword [0x100a50f8]
mov dword [0x100a50f8], ecx
cmp dword [ebp - 0x48], 0
jne 0x10034c9d
mov ecx, dword [ebp - 0x30]
movsx eax, byte [0x100a5026]
cdq
mov esi, eax
sub esi, dword [0x100a50e0]
movzx eax, byte [0x100a503b]
not eax
movsx edx, word [0x100a5140]
add eax, edx
cdq
xor esi, eax
xor ecx, esi
mov dword [0x100a5158], ecx
movzx eax, word [0x100a510c]
shl eax, 7
mov byte [ebp - 3], al
movsx ecx, word [0x100a5138]
add ecx, 0x57
mov dword [0x100a50f8], ecx
movzx edx, word [ebp - 0x10]
sub edx, 0x1bcd
mov dword [ebp - 0x30], edx
movzx eax, word [0x100a5128]
cmp eax, 1
jne 0x10035182
xor eax, eax
mov dword [0x100a50f0], 0xe78f8fa4
mov dword [0x100a50f4], eax
mov byte [ebp - 5], 0xba
movzx eax, word [ebp - 0x18]
cdq
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
sub ecx, eax
sbb esi, edx
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
push esi
push ecx
push eax
push edx
call fcn.10073670
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
sub ecx, 0xc06e1d72
sbb edx, 0
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], edx
mov byte [ebp - 4], 2
mov eax, dword [0x100a5158]
xor ecx, ecx
mov dword [0x100a50e0], eax
mov dword [0x100a50e4], ecx
mov byte [0x100a503b], 0xb2
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
xor ecx, 0x8d5b
xor esi, 0
movzx eax, byte [ebp - 7]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073670
mov byte [ebp - 7], al
movzx edx, byte [ebp - 1]
imul eax, edx, 0x83
mov byte [ebp - 5], al
mov ecx, dword [ebp - 0x48]
add ecx, 0x5bbfcbc4
mov byte [ebp - 7], cl
movzx edx, word [0x100a5148]
movsx eax, word [0x100a5140]
imul edx, eax
movzx ecx, word [0x100a5148]
sub ecx, edx
mov word [0x100a5148], cx
mov dl, byte [ebp - 4]
mov byte [ebp - 0x17c], dl
cmp byte [ebp - 0x17c], 0
je 0x10035274
cmp byte [ebp - 0x17c], 1
je 0x1003529b
cmp byte [ebp - 0x17c], 2
je 0x10035308
jmp 0x1003533f
movzx eax, byte [ebp - 1]
imul ecx, eax, 0xcece8df4
xor edx, edx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], edx
mov eax, dword [0x100a50e0]
add eax, 0xd0
mov word [0x100a5128], ax
jmp 0x1003533f
mov ecx, dword [0x100a5bfc]
xor edx, edx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], edx
movzx eax, word [ebp - 0x18]
test eax, eax
je 0x100352bc
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x33c], ecx
jmp 0x100352c8
mov edx, dword [0x100a5158]
mov dword [ebp - 0x33c], edx
mov al, byte [ebp - 0x33c]
mov byte [ebp - 1], al
mov eax, dword [0x100a5150]
mov edx, dword [0x100a5154]
mov cl, 7
call fcn.100736b0
mov dword [0x100a5158], eax
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0xe50], edx
mov dword [ebp - 0x48], ecx
movsx eax, word [0x100a5134]
add eax, 0x50aa236a
mov dword [ebp - 0x4c], eax
jmp 0x1003533f
movsx ecx, word [0x100a515c]
imul edx, ecx, 0xc2
movzx eax, byte [ebp - 5]
sub eax, edx
mov byte [ebp - 5], al
movsx ecx, word [0x100a5138]
add ecx, 0xa3
mov dword [ebp - 0x44], ecx
movsx edx, word [0x100a5138]
imul eax, edx, 0xa5be1e15
mov word [ebp - 0xc], ax
mov ecx, dword [ebp - 0x340]
imul ecx, dword [ebp - 0x340]
mov edx, dword [ebp - 0x344]
sub edx, dword [ebp - 0x344]
cmp ecx, edx
je 0x10035a23
mov eax, dword [ebp - 0x2c]
shr eax, 1
mov word [ebp - 0xc], ax
mov ecx, dword [0x100a5bfc]
xor edx, edx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], edx
mov eax, dword [0x100a50e8]
not eax
cdq
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x9d4], ecx
mov dword [ebp - 0x9d0], esi
mov edx, dword [ebp - 0x9d4]
or edx, dword [ebp - 0x9d0]
jne 0x100353af
mov dword [ebp - 0x348], 1
jmp 0x100353b9
mov dword [ebp - 0x348], 0
movsx eax, word [0x100a5134]
movsx ecx, word [0x100a515c]
sub eax, ecx
imul edx, eax, 0xe4b4
movzx eax, word [0x100a5128]
movzx ecx, word [0x100a512c]
sub eax, ecx
sub eax, dword [ebp - 0x348]
not eax
sub edx, eax
mov dword [0x100a50e8], edx
xor edx, edx
mov byte [ebp - 0x10f], dl
mov byte [ebp - 0xfe], 0x65
xor eax, eax
mov byte [ebp - 0xfd], al
mov ecx, 0x48
mov word [ebp - 0xfc], cx
mov edx, 0x1f
mov word [ebp - 0xfa], dx
mov eax, 0x45
mov word [ebp - 0xf8], ax
xor ecx, ecx
mov word [ebp - 0xf6], cx
mov dword [ebp - 0x8c], 0
jmp 0x1003544e
jmp 0x100387ae
mov ecx, dword [ebp - 0x40]
or ecx, dword [ebp - 0x3c]
jne 0x10035a3c
mov dword [ebp - 0x354], 1
jmp 0x10035a46
mov dword [ebp - 0x354], 0
cmp dword [0x100a50e8], 0
je 0x10035a7b
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x9f4], edx
mov dword [ebp - 0x9f0], eax
mov ecx, dword [ebp - 0x9f4]
or ecx, dword [ebp - 0x9f0]
je 0x10035a7b
mov dword [ebp - 0x358], 1
jmp 0x10035a85
mov dword [ebp - 0x358], 0
mov edx, dword [ebp - 0x354]
add edx, 0xba
cmp edx, dword [ebp - 0x358]
jg 0x10035b25
mov ax, word [ebp - 0x10]
sub ax, 1
mov word [ebp - 0x10], ax
movsx ecx, byte [ebp - 3]
add ecx, dword [0x100a50e8]
add ecx, dword [0x100a50e8]
mov dword [0x100a50e8], ecx
movsx edx, byte [ebp - 3]
mov eax, dword [ebp - 0x4c]
sub eax, edx
movzx ecx, word [ebp - 0x14]
imul ecx, dword [ebp - 0x30]
imul eax, ecx
xor edx, edx
mov ecx, dword [0x100a5150]
sub ecx, eax
mov eax, dword [0x100a5154]
sbb eax, edx
mov dword [0x100a5120], ecx
mov dword [0x100a5124], eax
mov eax, dword [0x100a50e8]
cdq
mov ecx, dword [0x100a5100]
mov esi, dword [0x100a5104]
push esi
push ecx
push edx
push eax
call fcn.10073670
mov ecx, eax
mov eax, dword [0x100a50e8]
cdq
add eax, ecx
mov dword [0x100a50e8], eax
mov edx, 0x89f1
mov word [0x100a5130], dx
mov eax, dword [0x100a5110]
mov ecx, dword [0x100a5114]
mov dword [ebp - 0xe5c], ecx
push eax
call dword [sym.imp.USER32.dll_IsIconic]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jb 0x10035b52
mov dword [ebp - 0x35c], 1
jmp 0x10035b5c
mov dword [ebp - 0x35c], 0
cmp dword [ebp - 0x2c], 0x1a
jb 0x10035b6e
mov dword [ebp - 0x360], 1
jmp 0x10035b78
mov dword [ebp - 0x360], 0
mov edx, dword [ebp - 0x35c]
cmp edx, dword [ebp - 0x360]
jge 0x10035cce
movzx eax, word [ebp - 0x18]
add eax, dword [0x100a5158]
mov word [ebp - 0x18], ax
mov ecx, dword [0x100a5158]
movzx eax, word [0x100a5130]
cdq
mov edx, dword [0x100a5100]
mov esi, dword [0x100a5104]
mov dword [ebp - 0xe60], esi
sub eax, edx
xor ecx, eax
mov dword [ebp - 0x2c], ecx
movzx eax, byte [str._NgcSignWithUserIdK]
test eax, eax
jne 0x10035bd6
mov dword [ebp - 0x364], 1
jmp 0x10035be0
mov dword [ebp - 0x364], 0
mov ecx, dword [ebp - 0x30]
sub ecx, dword [ebp - 0x364]
movzx edx, word [ebp - 0xc]
not edx
mov eax, dword [0x100a5158]
sub eax, edx
add ecx, eax
movsx edx, byte [ebp - 3]
imul eax, edx, 0x8493d7f6
add ecx, eax
mov word [0x100a515c], cx
movzx eax, byte [str._NgcSignWithUserIdK]
cdq
push 0xf2316
push 0xc3e100d6
push edx
push eax
call fcn.10073670
mov word [0x100a512c], ax
movzx eax, word [0x100a512c]
cdq
mov ecx, dword [0x100a5120]
mov esi, dword [0x100a5124]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x9fc], ecx
mov dword [ebp - 0x9f8], esi
mov edx, dword [ebp - 0x9fc]
or edx, dword [ebp - 0x9f8]
jne 0x10035c68
mov dword [ebp - 0x368], 1
jmp 0x10035c72
mov dword [ebp - 0x368], 0
movsx eax, word [0x100a515c]
not eax
and eax, dword [0x100a50e8]
not eax
or eax, dword [ebp - 0x368]
cdq
mov ebx, eax
movsx eax, word [0x100a515c]
movzx ecx, word [0x100a5148]
sub eax, ecx
not eax
cdq
push edx
push eax
mov edx, dword [ebp - 0x3c]
push edx
mov eax, dword [ebp - 0x40]
push eax
call fcn.10073670
not eax
sub ebx, eax
mov byte [ebp - 2], bl
movsx ecx, word [0x100a50dc]
add ecx, 0xe8a1
mov word [0x100a515c], cx
jmp 0x10035d55
mov edx, dword [0x100a5100]
mov eax, dword [0x100a5104]
mov dword [ebp - 0xa04], edx
mov dword [ebp - 0xa00], eax
mov ecx, dword [ebp - 0xa04]
or ecx, dword [ebp - 0xa00]
je 0x10035d55
movzx eax, byte [ebp - 7]
cdq
mov ecx, eax
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xe64], eax
sub ecx, edx
movzx eax, byte [ebp - 7]
cdq
add eax, ecx
mov byte [ebp - 7], al
mov ecx, dword [0x100a5100]
mov edx, dword [0x100a5104]
mov dword [ebp - 0xe68], edx
add ecx, 0x86d859e5
mov word [ebp - 0x10], cx
mov eax, dword [0x100a5100]
mov ecx, dword [0x100a5104]
mov dword [ebp - 0xe6c], ecx
not eax
mov word [ebp - 0x10], ax
movzx edx, byte [0x100a503b]
sar edx, 5
mov dword [0x100a50e8], edx
lea eax, [ebp - 0x1540]
push eax
mov ecx, dword [0x10318494]
push ecx
call fcn.1003f360
test eax, eax
je 0x10037759
movzx edx, word [ebp - 0x18]
movzx eax, byte [ebp - 7]
cmp edx, eax
jl 0x10035d90
xor ecx, ecx
mov dword [ebp - 0x568], 1
mov dword [ebp - 0x564], ecx
jmp 0x10035d9b
xorps xmm0, xmm0
movlpd qword [ebp - 0x568], xmm0
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0xa0c], edx
mov dword [ebp - 0xa08], eax
mov ecx, dword [ebp - 0xa08]
cmp ecx, dword [ebp - 0x564]
ja 0x10035dd7
jb 0x10035dcb
mov edx, dword [ebp - 0xa0c]
cmp edx, dword [ebp - 0x568]
jae 0x10035dd7
mov dword [ebp - 0x378], 1
jmp 0x10035de1
mov dword [ebp - 0x378], 0
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xa14], eax
mov dword [ebp - 0xa10], ecx
mov edx, dword [ebp - 0xa14]
or edx, dword [ebp - 0xa10]
jne 0x10035e0d
mov dword [ebp - 0x36c], 1
jmp 0x10035e17
mov dword [ebp - 0x36c], 0
mov eax, dword [ebp - 0x44]
not eax
cmp dword [ebp - 0x36c], eax
ja 0x10035e30
mov eax, dword [0x100a50f8]
cdq
mov ecx, eax
mov esi, edx
movzx eax, word [ebp - 0xc]
cdq
mov edi, dword [0x100a5120]
mov ebx, dword [0x100a5124]
sub edi, eax
sbb ebx, edx
movzx eax, word [ebp - 0x18]
cdq
add eax, dword [0x100a5150]
adc edx, dword [0x100a5154]
sub edi, eax
sbb ebx, edx
push ebx
push edi
push esi
push ecx
call fcn.10073670
mov dword [ebp - 0xaf4], eax
mov dword [ebp - 0xaf0], edx
mov edx, dword [ebp - 0xaf4]
or edx, dword [ebp - 0xaf0]
jne 0x100377bc
mov dword [ebp - 0x400], 1
jmp 0x100377c6
mov dword [ebp - 0x400], 0
mov eax, dword [ebp - 0x400]
mov dword [0x100a5158], eax
mov ecx, dword [0x100a5144]
sub ecx, 0x92c5
movzx edx, word [ebp - 0x10]
xor edx, ecx
mov word [ebp - 0x10], dx
movzx eax, byte [ebp - 7]
imul ecx, eax, 0xfe
mov dword [ebp - 0x30], ecx
mov dx, word [0x100a5150]
mov word [0x100a5134], dx
mov eax, dword [ebp - 0x48]
not eax
imul eax, dword [ebp - 0x48]
mov dword [ebp - 0x2c], eax
movzx ecx, byte [ebp - 4]
movsx edx, byte [0x100a504b]
imul ecx, edx
movzx eax, byte [ebp - 4]
add eax, ecx
mov byte [ebp - 4], al
mov ecx, 0xffffa1a3
mov word [0x100a50dc], cx
movsx edx, word [0x100a5140]
sub edx, dword [0x100a5144]
mov eax, dword [ebp - 0x4c]
not eax
imul edx, eax
mov byte [ebp - 4], dl
mov ecx, dword [0x100a5120]
mov edx, dword [0x100a5124]
mov dword [ebp - 0xafc], ecx
mov dword [ebp - 0xaf8], edx
mov eax, dword [ebp - 0xafc]
or eax, dword [ebp - 0xaf8]
je 0x10037889
mov ecx, dword [0x100a5110]
mov edx, dword [0x100a5114]
mov dword [ebp - 0x588], ecx
mov dword [ebp - 0x584], edx
jmp 0x1003789c
mov eax, dword [0x100a5108]
xor ecx, ecx
mov dword [ebp - 0x588], eax
mov dword [ebp - 0x584], ecx
mov dx, word [ebp - 0x588]
mov word [0x100a510c], dx
movzx eax, word [0x100a512c]
cdq
mov ecx, dword [0x100a5110]
mov esi, dword [0x100a5114]
push esi
push ecx
push edx
push eax
call fcn.10073670
mov ecx, eax
movzx eax, word [0x100a512c]
cdq
sub eax, ecx
mov word [0x100a512c], ax
movzx edx, word [0x100a5148]
sub edx, dword [ebp - 0x44]
mov word [0x100a5148], dx
mov eax, dword [0x100a50e8]
shl eax, 3
mov word [ebp - 0x14], ax
mov eax, dword [0x100a50f8]
cdq
mov ecx, eax
mov esi, edx
movsx eax, word [0x100a50dc]
cdq
mov edi, dword [ebp - 0x1c]
add eax, dword [ebp - 0x20]
adc edx, edi
mov dword [ebp - 0xb04], ecx
mov dword [ebp - 0xb00], esi
mov dword [ebp - 0xb0c], eax
mov dword [ebp - 0xb08], edx
mov edx, dword [ebp - 0xb04]
cmp edx, dword [ebp - 0xb0c]
jne 0x10037fbd
mov eax, dword [ebp - 0xb00]
cmp eax, dword [ebp - 0xb08]
jne 0x10037fbd
xor ecx, ecx
mov dword [0x100a5120], 0xe78f8fa4
mov dword [0x100a5124], ecx
mov edx, 0xff
mov word [0x100a5148], dx
movzx eax, word [ebp - 0xc]
cdq
sub eax, 0xfb08b2bd
sbb edx, 0x5de52
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
add eax, 1
adc ecx, 0
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], ecx
movsx edx, byte [0x100a504b]
imul eax, edx, 0xb19fba23
xor ecx, ecx
mov dword [0x100a50f0], eax
mov dword [0x100a50f4], ecx
mov ecx, dword [0x100a5120]
mov esi, dword [0x100a5124]
movzx eax, word [ebp - 0x14]
add eax, 1
cdq
mov dword [ebp - 0xb44], ecx
mov dword [ebp - 0xb40], esi
mov dword [ebp - 0xb4c], eax
mov dword [ebp - 0xb48], edx
mov edx, dword [ebp - 0xb44]
cmp edx, dword [ebp - 0xb4c]
jne 0x100385f2
jmp 0x1003a01c
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2c]
xor esi, esi
mov dword [ebp - 0xb84], eax
mov dword [ebp - 0xb80], ecx
mov dword [ebp - 0xb8c], edx
mov dword [ebp - 0xb88], esi
mov eax, dword [ebp - 0xb84]
cmp eax, dword [ebp - 0xb8c]
jne 0x100387fe
mov ecx, dword [ebp - 0xb80]
cmp ecx, dword [ebp - 0xb88]
jne 0x100387fe
mov dword [ebp - 0x444], 1
jmp 0x10038808
mov dword [ebp - 0x444], 0
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xb94], edx
mov dword [ebp - 0xb90], eax
cmp dword [ebp - 0xb94], 0x1a
jne 0x10038838
cmp dword [ebp - 0xb90], 0
jne 0x10038838
mov dword [ebp - 0x448], 1
jmp 0x10038842
mov dword [ebp - 0x448], 0
mov ecx, dword [ebp - 0x444]
cmp ecx, dword [ebp - 0x448]
je 0x100388cb
movsx edx, word [0x100a5140]
imul eax, edx, 0x752e62cf
mov byte [0x100a504b], al
movzx ecx, byte [str._NgcSignWithUserIdK]
test ecx, ecx
jne 0x10038879
mov dword [ebp - 0x44c], 1
jmp 0x10038883
mov dword [ebp - 0x44c], 0
movsx edx, byte [0x100a5026]
movzx eax, word [ebp - 0x10]
sub edx, eax
not edx
movzx ecx, byte [ebp - 5]
add ecx, dword [ebp - 0x44c]
sub edx, ecx
mov byte [ebp - 1], dl
movzx edx, word [ebp - 0xc]
movsx eax, byte [ebp - 6]
imul edx, eax
movzx ecx, word [ebp - 0xc]
add ecx, edx
mov word [ebp - 0xc], cx
movsx eax, byte [0x100a5026]
cdq
sub eax, dword [ebp - 0x40]
mov dword [0x100a5108], eax
jmp 0x10038be3
movzx edx, word [0x100a510c]
test edx, edx
je 0x10038a33
movsx eax, word [0x100a513c]
mov ecx, dword [ebp - 0x48]
sub ecx, eax
mov edx, dword [ebp - 0x48]
or edx, ecx
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x30]
add eax, dword [ebp - 0x44]
mov dword [ebp - 0x30], eax
movsx ecx, word [0x100a50fc]
test ecx, ecx
jne 0x1003890e
mov dword [ebp - 0x450], 1
jmp 0x10038918
mov dword [ebp - 0x450], 0
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0xb9c], edx
mov dword [ebp - 0xb98], eax
mov ecx, dword [ebp - 0xb9c]
or ecx, dword [ebp - 0xb98]
jne 0x10038944
mov dword [ebp - 0x454], 1
jmp 0x1003894e
mov dword [ebp - 0x454], 0
mov edx, dword [ebp - 0x450]
xor edx, dword [ebp - 0x454]
mov dword [0x100a5108], edx
mov eax, dword [0x100a5108]
xor ecx, ecx
mov edx, dword [0x100a50f0]
mov esi, dword [0x100a50f4]
push ecx
push eax
push esi
push edx
call fcn.10073670
mov dword [ebp - 0xba4], eax
mov dword [ebp - 0xba0], edx
mov eax, dword [ebp - 0xba4]
or eax, dword [ebp - 0xba0]
jne 0x100389a4
mov ecx, 1
mov word [ebp - 0xa0], cx
jmp 0x100389ad
xor edx, edx
mov word [ebp - 0xa0], dx
mov ax, word [ebp - 0xa0]
mov word [ebp - 0x14], ax
movsx ecx, word [0x100a515c]
add ecx, 0x67ba20f7
xor edx, edx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], edx
movzx eax, word [ebp - 0x18]
test eax, eax
jne 0x100389e1
mov dword [ebp - 0x458], 1
jmp 0x100389eb
mov dword [ebp - 0x458], 0
movsx ecx, byte [ebp - 3]
test ecx, ecx
jne 0x100389ff
mov dword [ebp - 0x45c], 1
jmp 0x10038a09
mov dword [ebp - 0x45c], 0
movsx edx, word [0x100a5138]
movsx eax, word [0x100a513c]
sub edx, eax
mov ecx, dword [ebp - 0x458]
sub ecx, dword [ebp - 0x45c]
xor edx, ecx
mov word [0x100a5140], dx
jmp 0x10038be3
movzx edx, word [ebp - 0x14]
test edx, edx
jne 0x10038a47
mov dword [ebp - 0x460], 1
jmp 0x10038a51
mov dword [ebp - 0x460], 0
movsx eax, byte [0x100a5026]
cmp dword [ebp - 0x460], eax
jg 0x10038a74
xor ecx, ecx
mov dword [ebp - 0x5c8], 1
mov dword [ebp - 0x5c4], ecx
jmp 0x10038a7f
xorps xmm0, xmm0
movlpd qword [ebp - 0x5c8], xmm0
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0xbac], edx
mov dword [ebp - 0xba8], eax
mov ecx, dword [ebp - 0x5c8]
cmp ecx, dword [ebp - 0xbac]
jne 0x10038b42
mov edx, dword [ebp - 0x5c4]
cmp edx, dword [ebp - 0xba8]
jne 0x10038b42
movsx eax, word [0x100a50ec]
mov ecx, 0xe0b9
sub ecx, eax
mov word [0x100a50fc], cx
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [0x100a511c]
sub edx, dword [0x100a5118]
sbb eax, ecx
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
push eax
push edx
push esi
push ecx
call fcn.10073670
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
movzx eax, word [0x100a5128]
add eax, 0x5077
cdq
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
movzx edx, byte [ebp - 2]
xor edx, dword [ebp - 0x48]
movzx eax, word [ebp - 0x14]
imul edx, eax
mov ecx, edx
mov eax, dword [0x100a50e8]
cdq
mov edx, dword [0x100a5100]
mov esi, dword [0x100a5104]
mov dword [ebp - 0xef4], esi
sub edx, eax
not edx
add edx, 0x6388
add ecx, edx
mov byte [ebp - 1], cl
jmp 0x10038be3
movzx eax, word [ebp - 0x18]
test eax, eax
je 0x10038be3
movzx eax, word [0x100a5130]
sar eax, 1
cdq
mov dword [0x100a5120], eax
mov dword [0x100a5124], edx
mov ecx, dword [0x100a5bfc]
mov dword [ebp - 0x4c], ecx
movzx eax, byte [ebp - 1]
cdq
mov ecx, dword [0x100a5100]
mov esi, dword [0x100a5104]
xor ecx, eax
xor esi, edx
mov dword [0x100a5100], ecx
mov dword [0x100a5104], esi
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
push 0
push 0xc4a
push eax
push edx
call fcn.10073670
mov word [0x100a5134], ax
movsx eax, word [0x100a50ec]
cdq
mov ecx, eax
mov esi, edx
mov edx, dword [0x100a511c]
add ecx, dword [0x100a5118]
adc esi, edx
movsx eax, word [0x100a50ec]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073670
mov word [0x100a50ec], ax
mov eax, 0xb059
mov word [0x100a5130], ax
mov byte [0x100a5026], 0x1a
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
movsx eax, word [0x100a5134]
cdq
mov dword [ebp - 0xbb4], ecx
mov dword [ebp - 0xbb0], esi
mov dword [ebp - 0xbbc], eax
mov dword [ebp - 0xbb8], edx
mov edx, dword [ebp - 0xbb0]
cmp edx, dword [ebp - 0xbb8]
jl 0x10038c3a
jg 0x10038c2e
mov eax, dword [ebp - 0xbb4]
cmp eax, dword [ebp - 0xbbc]
jbe 0x10038c3a
mov dword [ebp - 0x464], 1
jmp 0x10038c44
mov dword [ebp - 0x464], 0
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0xbc4], ecx
mov dword [ebp - 0xbc0], edx
cmp dword [ebp - 0xbc0], 0
jl 0x10038c76
jg 0x10038c6a
cmp dword [ebp - 0xbc4], 0x22
jbe 0x10038c76
mov dword [ebp - 0x468], 1
jmp 0x10038c80
mov dword [ebp - 0x468], 0
mov eax, dword [ebp - 0x464]
cmp eax, dword [ebp - 0x468]
jle 0x10038cd2
xor ecx, ecx
mov dword [0x100a50e0], 8
mov dword [0x100a50e4], ecx
movsx edx, word [0x100a50fc]
movsx eax, byte [ebp - 6]
sub edx, eax
movsx ecx, word [0x100a50fc]
add ecx, edx
mov word [0x100a50fc], cx
movsx edx, word [0x100a50fc]
add edx, 0xa114
mov byte [0x100a503b], dl
jmp 0x10038d15
movzx eax, word [ebp - 0xc]
cdq
add eax, 0x6e143829
mov ecx, dword [0x100a5158]
sub ecx, eax
mov dword [0x100a5158], ecx
mov edx, dword [ebp - 0x4c]
xor edx, 0x93
mov eax, dword [0x100a5108]
add eax, edx
mov dword [0x100a5108], eax
mov ecx, 2
imul edx, ecx, 0x5a4
mov ax, word [edx + 0x100fd620]
mov word [ebp - 0x10], ax
mov ecx, dword [0x100a5118]
mov esi, dword [0x100a511c]
movsx eax, byte [0x100a5026]
movzx edx, word [ebp - 0x14]
add eax, edx
cdq
mov dword [ebp - 0xbcc], ecx
mov dword [ebp - 0xbc8], esi
mov dword [ebp - 0xbd4], eax
mov dword [ebp - 0xbd0], edx
mov eax, dword [ebp - 0xbcc]
cmp eax, dword [ebp - 0xbd4]
jne 0x1003909a
mov ecx, dword [ebp - 0xbc8]
cmp ecx, dword [ebp - 0xbd0]
jne 0x1003909a
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
movsx eax, word [0x100a50dc]
cdq
mov dword [ebp - 0xbdc], ecx
mov dword [ebp - 0xbd8], esi
mov dword [ebp - 0xbe4], eax
mov dword [ebp - 0xbe0], edx
mov edx, dword [ebp - 0xbd8]
cmp edx, dword [ebp - 0xbe0]
jb 0x10038df3
ja 0x10038daf
mov eax, dword [ebp - 0xbdc]
cmp eax, dword [ebp - 0xbe4]
jb 0x10038df3
movzx ecx, word [ebp - 0x10]
imul edx, ecx, 0xcc8
mov word [ebp - 0x18], dx
mov eax, dword [ebp - 0x40]
sub eax, 1
mov ecx, dword [ebp - 0x3c]
sbb ecx, 0
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], ecx
movsx edx, word [0x100a5134]
movzx eax, byte [ebp - 2]
imul edx, eax
mov word [0x100a5134], dx
mov ecx, dword [0x100a5158]
add ecx, 0xe72d
mov byte [ebp - 7], cl
mov dword [ebp - 0x188], 0x2aa
jmp 0x10038e0e
mov edx, dword [ebp - 0x188]
sub edx, 1
mov dword [ebp - 0x188], edx
cmp dword [ebp - 0x188], 0
jle 0x10038ea7
mov dword [ebp - 0x48], 0x2970
mov ecx, dword [ebp - 0x40]
add ecx, 0x1fb596f8
mov esi, dword [ebp - 0x3c]
adc esi, 0x1fe0d
mov edx, dword [ebp - 0x2c]
add edx, 0x183c
xor eax, eax
xor ecx, edx
xor esi, eax
mov eax, dword [ebp - 0x4c]
cdq
mov edi, eax
mov ebx, edx
movzx eax, word [0x100a5128]
cdq
mov dword [ebp - 0x69c], esi
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0x698], ecx
mov ecx, dword [ebp - 0x1c]
add esi, eax
adc ecx, edx
sub edi, esi
sbb ebx, ecx
mov ecx, dword [ebp - 0x698]
add ecx, edi
mov esi, dword [ebp - 0x69c]
adc esi, ebx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], esi
movzx eax, byte [ebp - 1]
cdq
add eax, 0x8adf57ee
adc edx, 0x2de37
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
mov dl, byte [ebp - 2]
add dl, 1
mov byte [ebp - 2], dl
jmp 0x10038dff
mov eax, dword [0x100a5120]
mov ecx, dword [0x100a5124]
mov edx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
add edx, 0x4b2ce6e5
adc esi, 0x5cc23
mov dword [ebp - 0xbec], eax
mov dword [ebp - 0xbe8], ecx
mov dword [ebp - 0xbf4], edx
mov dword [ebp - 0xbf0], esi
mov eax, dword [ebp - 0xbec]
cmp eax, dword [ebp - 0xbf4]
jne 0x1003909a
mov ecx, dword [ebp - 0xbe8]
cmp ecx, dword [ebp - 0xbf0]
jne 0x1003909a
mov dword [ebp - 0x30], 1
mov edx, dword [ebp - 0x44]
imul edx, dword [ebp - 0x44]
add edx, dword [ebp - 0x44]
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x2c], 0x25f3
movzx eax, byte [ebp - 1]
xor eax, 0x744c
mov dword [ebp - 0x44], eax
mov byte [ebp - 6], 0x82
movzx ecx, word [0x100a5148]
movzx edx, word [0x100a512c]
sub ecx, edx
movzx eax, word [0x100a5148]
sub eax, ecx
mov word [0x100a5148], ax
movsx ecx, word [0x100a5140]
sar ecx, 7
mov word [0x100a5134], cx
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x46c], edx
cmp dword [ebp - 0x46c], 0
je 0x10038f78
cmp dword [ebp - 0x46c], 1
je 0x10038fce
jmp 0x10038ff2
movzx eax, word [ebp - 0x10]
mov ecx, dword [0x100a5144]
add ecx, eax
mov dword [0x100a5144], ecx
mov dword [0x100a5108], 0xc3
movsx edx, word [0x100a515c]
movsx eax, word [0x100a5134]
imul edx, eax
movsx ecx, word [0x100a515c]
imul ecx, edx
mov word [0x100a515c], cx
movzx edx, byte [ebp - 7]
add edx, dword [0x100a5158]
mov eax, dword [0x100a5158]
sub eax, edx
mov dword [0x100a5158], eax
jmp 0x10038ff2
movzx ecx, word [ebp - 0x10]
add ecx, 0x639df047
mov word [0x100a5148], cx
mov edx, dword [0x100a50e8]
mov dword [ebp - 0x2c], edx
mov ax, word [0x100a5bfc]
mov word [ebp - 0x14], ax
jmp 0x10038be3
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xc04], eax
mov dword [ebp - 0xc00], ecx
mov edx, dword [ebp - 0x40]
cmp edx, dword [ebp - 0xc04]
jne 0x100390c6
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0xc00]
je 0x10039164
movzx ecx, word [ebp - 0x10]
add ecx, 0x2b
mov edx, dword [ebp - 0x30]
sub edx, ecx
mov dword [ebp - 0x30], edx
je 0x100390eb
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x5d0], eax
mov dword [ebp - 0x5cc], ecx
jmp 0x100390ff
movsx eax, word [0x100a50fc]
cdq
mov dword [ebp - 0x5d0], eax
mov dword [ebp - 0x5cc], edx
mov dx, word [ebp - 0x5d0]
mov word [ebp - 0x18], dx
movzx eax, word [ebp - 0x10]
movzx ecx, word [0x100a5128]
not ecx
sub eax, ecx
not eax
mov edx, dword [ebp - 0x4c]
sub edx, eax
mov eax, dword [ebp - 0x48]
xor eax, edx
jne 0x10039135
mov ecx, 1
mov word [ebp - 0xa2], cx
jmp 0x1003913e
xor edx, edx
mov word [ebp - 0xa2], dx
mov ax, word [ebp - 0xa2]
mov word [0x100a5134], ax
movzx ecx, word [ebp - 0x18]
and ecx, dword [0x100a50f8]
movzx edx, word [ebp - 0x18]
xor edx, ecx
mov word [ebp - 0x18], dx
jmp 0x100391f6
movzx eax, word [0x100a5148]
cmp eax, dword [ebp - 0x2c]
jne 0x1003917c
mov dword [ebp - 0x474], 1
jmp 0x10039186
mov dword [ebp - 0x474], 0
mov ecx, dword [ebp - 0x474]
not ecx
test ecx, ecx
je 0x100391f6
mov edx, dword [ebp - 0x30]
xor eax, eax
sub edx, 0xe74e93ee
sbb eax, 0x83ba4
mov ecx, dword [0x100a50f0]
mov esi, dword [0x100a50f4]
sub ecx, edx
sbb esi, eax
mov dword [0x100a50f0], ecx
mov dword [0x100a50f4], esi
movzx edx, word [0x100a5128]
sar edx, 2
mov dword [0x100a50e8], edx
mov eax, dword [0x100a5bfc]
xor ecx, ecx
mov dword [0x100a50e0], eax
mov dword [0x100a50e4], ecx
movsx edx, byte [0x100a504b]
movzx eax, word [0x100a510c]
add edx, eax
mov byte [0x100a504b], dl
mov ecx, dword [0x100a5bfc]
mov dword [ebp - 0x18c], ecx
mov edx, dword [0x100a5120]
mov eax, dword [0x100a5124]
mov dword [ebp - 0xc0c], edx
mov dword [ebp - 0xc08], eax
mov ecx, dword [ebp - 0xc0c]
or ecx, dword [ebp - 0xc08]
je 0x10039241
cmp dword [ebp - 0x30], 0
je 0x10039241
xor edx, edx
mov dword [ebp - 0x5d8], 1
mov dword [ebp - 0x5d4], edx
jmp 0x1003924c
xorps xmm0, xmm0
movlpd qword [ebp - 0x5d8], xmm0
mov eax, dword [ebp - 0x40]
sub eax, dword [ebp - 0x5d8]
mov ecx, dword [ebp - 0x3c]
sbb ecx, dword [ebp - 0x5d4]
mov dword [ebp - 0xc14], eax
mov dword [ebp - 0xc10], ecx
mov edx, dword [ebp - 0xc14]
or edx, dword [ebp - 0xc10]
je 0x10039357
mov eax, dword [0x100a5158]
xor ecx, ecx
mov dword [ebp - 0xc1c], eax
mov dword [ebp - 0xc18], ecx
mov edx, dword [0x100a50e4]
cmp edx, dword [ebp - 0xc18]
jl 0x1003930b
jg 0x100392ac
mov eax, dword [0x100a50e0]
cmp eax, dword [ebp - 0xc1c]
jbe 0x1003930b
movzx ecx, word [0x100a5130]
movsx edx, word [0x100a5140]
imul ecx, edx
movsx eax, byte [0x100a504b]
add eax, dword [0x100a5108]
not eax
add ecx, eax
xor edx, edx
mov dword [0x100a5110], ecx
mov dword [0x100a5114], edx
mov eax, dword [ebp - 0x44]
sub eax, 0xe8
mov word [ebp - 0xc], ax
movzx eax, byte [str._NgcSignWithUserIdK]
movzx ecx, word [ebp - 0xc]
sub eax, ecx
cdq
mov ecx, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x20]
sbb edx, ecx
mov dword [0x100a50e0], eax
mov dword [0x100a50e4], edx
jmp 0x10039352
movzx edx, byte [0x100a503b]
mov eax, dword [0x100a5108]
imul eax, edx
xor ecx, ecx
mov dword [0x100a5100], eax
mov dword [0x100a5104], ecx
movzx edx, byte [ebp - 5]
not edx
movzx eax, byte [ebp - 4]
imul edx, eax
mov word [0x100a5148], dx
movzx ecx, word [0x100a5148]
movzx edx, byte [0x100a503b]
sub ecx, edx
mov word [0x100a5148], cx
jmp 0x10039583
cmp dword [ebp - 0x3c], 0
jg 0x10039374
jl 0x10039368
cmp dword [ebp - 0x40], 0xc5
ja 0x10039374
mov dword [ebp - 0x478], 1
jmp 0x1003937e
mov dword [ebp - 0x478], 0
mov eax, dword [0x100a5108]
imul eax, dword [ebp - 0x478]
test eax, eax
je 0x100393d4
xor ecx, ecx
mov dword [0x100a5120], 0xdc
mov dword [0x100a5124], ecx
mov edx, dword [ebp - 0x2c]
shl edx, 1
mov word [0x100a5130], dx
movsx eax, word [0x100a50fc]
add eax, dword [ebp - 0x44]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x30]
add ecx, 1
mov dword [ebp - 0x30], ecx
movzx edx, word [ebp - 0x18]
imul eax, edx, 0xe1d2
mov byte [ebp - 1], al
jmp 0x10039583
movzx ecx, word [ebp - 0xc]
test ecx, ecx
je 0x100394c9
movsx edx, word [0x100a50fc]
shl edx, 1
mov byte [ebp - 5], dl
movzx eax, word [ebp - 0x18]
movsx ecx, word [0x100a5134]
sub eax, ecx
cdq
mov ecx, eax
mov esi, edx
movzx eax, byte [ebp - 2]
cdq
mov edi, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x34]
xor edi, eax
xor ebx, edx
not edi
not ebx
sub ecx, edi
sbb esi, ebx
mov edi, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x24]
add edi, 0xf818fc7c
adc ebx, 0xfff8c114
not edi
not ebx
mov eax, dword [ebp - 0x4c]
cdq
sub edi, eax
sbb ebx, edx
push ebx
push edi
push esi
push ecx
call fcn.10073670
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
movzx edx, byte [ebp - 1]
test edx, edx
jne 0x10039456
mov dword [ebp - 0x47c], 1
jmp 0x10039460
mov dword [ebp - 0x47c], 0
mov eax, dword [ebp - 0x44]
not eax
mov ecx, eax
xor esi, esi
xor ecx, dword [ebp - 0x20]
xor esi, dword [ebp - 0x1c]
movsx eax, word [0x100a50fc]
add eax, dword [ebp - 0x47c]
cdq
push edx
push eax
push esi
push ecx
call fcn.10073670
mov dword [0x100a5110], eax
mov dword [0x100a5114], edx
mov edx, 1
mov word [ebp - 0x10], dx
movzx eax, byte [0x100a503b]
imul eax, eax, 0xe4
cdq
mov ecx, dword [0x100a5118]
mov esi, dword [0x100a511c]
add ecx, eax
adc esi, edx
mov dword [0x100a5118], ecx
mov dword [0x100a511c], esi
jmp 0x10039583
cmp dword [0x100a50e8], 0xffffff7d
jl 0x10039583
mov edx, dword [0x100a50f0]
mov eax, dword [0x100a50f4]
mov dword [ebp - 0xcf4], eax
sub edx, 0x72f0
mov word [0x100a5140], dx
mov ecx, dword [0x100a5120]
mov edx, dword [0x100a5124]
add ecx, 0x57a9
adc edx, 0
mov dword [0x100a50f0], ecx
mov dword [0x100a50f4], edx
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xc24], eax
mov dword [ebp - 0xc20], ecx
mov edx, dword [ebp - 0xc24]
or edx, dword [ebp - 0xc20]
jne 0x10039544
mov dword [ebp - 0x480], 1
jmp 0x1003954e
mov dword [ebp - 0x480], 0
movzx eax, word [ebp - 0x18]
add eax, dword [ebp - 0x480]
movzx ecx, byte [ebp - 2]
movzx edx, byte [ebp - 2]
xor ecx, edx
xor eax, ecx
movsx ecx, byte [0x100a504b]
movsx edx, word [0x100a5138]
or edx, dword [0x100a5144]
not edx
sub ecx, edx
sub eax, ecx
mov byte [str._NgcSignWithUserIdK], al
mov eax, dword [ebp - 0x18c]
add eax, 0x353
mov dword [ebp - 0xcf8], eax
movzx eax, byte [ebp - 7]
sub eax, 0x72869eb9
cdq
mov dword [0x100a5120], eax
mov dword [0x100a5124], edx
movzx ecx, word [ebp - 0xc]
sub ecx, 0x7f9877b0
xor edx, edx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x3c], edx
movsx eax, word [0x100a5138]
cdq
mov esi, eax
mov edi, edx
mov eax, dword [ebp - 0x40]
not eax
mov ecx, dword [ebp - 0x3c]
not ecx
xor esi, eax
xor edi, ecx
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
not edx
not eax
mov ecx, dword [0x100a5120]
mov ebx, dword [0x100a5124]
push eax
push edx
push ebx
push ecx
call fcn.10073670
push edx
push eax
push edi
push esi
call fcn.10073670
mov dword [ebp - 0xc2c], eax
mov dword [ebp - 0xc28], edx
mov edx, dword [ebp - 0xc2c]
or edx, dword [ebp - 0xc28]
jne 0x10039623
mov dword [ebp - 0x484], 1
jmp 0x1003962d
mov dword [ebp - 0x484], 0
movzx eax, word [ebp - 0x18]
imul eax, dword [ebp - 0x44]
movsx ecx, byte [0x100a5026]
add ecx, dword [ebp - 0x4c]
add eax, ecx
mov edx, dword [ebp - 0x484]
sub edx, eax
jne 0x1003965f
xor eax, eax
mov dword [ebp - 0x5e0], 1
mov dword [ebp - 0x5dc], eax
jmp 0x1003966a
xorps xmm0, xmm0
movlpd qword [ebp - 0x5e0], xmm0
mov ecx, dword [ebp - 0x5e0]
mov edx, dword [ebp - 0x5dc]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], edx
movzx eax, word [ebp - 0x10]
movzx ecx, byte [ebp - 1]
sub eax, ecx
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x30]
movzx eax, word [ebp - 0xc]
cdq
mov edx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov dword [ebp - 0xcfc], esi
sub edx, eax
add ecx, edx
mov byte [0x100a504b], cl
mov eax, dword [ebp - 0x18c]
add eax, 0x58b
mov dword [ebp - 0xd00], eax
mov ecx, dword [ebp - 0x18c]
add ecx, 0x627
mov dword [ebp - 0x190], ecx
xor edx, edx
mov dword [0x100a5120], 0x402c
mov dword [0x100a5124], edx
mov ecx, 9
mov esi, 0x100864f0
lea edi, [ebp - 0xf94]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea eax, [ebp - 0xf94]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov word [0x100a5130], ax
mov ecx, dword [0x100a5120]
mov edx, dword [0x100a5124]
mov eax, dword [ebp - 0x2c]
add eax, 0x402c
xor esi, esi
mov dword [ebp - 0xc34], ecx
mov dword [ebp - 0xc30], edx
mov dword [ebp - 0xc3c], eax
mov dword [ebp - 0xc38], esi
mov ecx, dword [ebp - 0xc34]
cmp ecx, dword [ebp - 0xc3c]
jne 0x100397ea
mov edx, dword [ebp - 0xc30]
cmp edx, dword [ebp - 0xc38]
jne 0x100397ea
movsx eax, word [0x100a513c]
cdq
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
add ecx, 0x16
adc esi, 0
mov dword [ebp - 0xc44], eax
mov dword [ebp - 0xc40], edx
mov dword [ebp - 0xc4c], ecx
mov dword [ebp - 0xc48], esi
mov edx, dword [ebp - 0xc44]
cmp edx, dword [ebp - 0xc4c]
jne 0x100397ea
mov eax, dword [ebp - 0xc40]
cmp eax, dword [ebp - 0xc48]
jne 0x100397ea
movzx ecx, word [0x100a5148]
mov edx, dword [ebp - 0x30]
sub edx, ecx
mov dword [ebp - 0x30], edx
movzx eax, byte [ebp - 5]
not eax
mov word [ebp - 0x10], ax
jmp 0x100397ea
xor edx, edx
mov dword [0x100a5120], 0x402c
mov dword [0x100a5124], edx
movsx eax, word [0x100a515c]
mov ecx, dword [ebp - 0x44]
lea edx, [eax + ecx - 0x5a]
mov word [0x100a515c], dx
mov eax, 0xffffea36
mov word [0x100a50fc], ax
mov ecx, dword [0x100a50e0]
add ecx, dword [ebp - 0x40]
mov esi, dword [0x100a50e4]
adc esi, dword [ebp - 0x3c]
movzx eax, word [0x100a510c]
cdq
push edx
push eax
push esi
push ecx
call fcn.10073670
mov ecx, eax
mov esi, edx
movzx eax, word [ebp - 0x10]
not eax
movzx edx, word [0x100a5130]
sub eax, edx
movzx edx, word [ebp - 0x14]
movsx edi, word [0x100a50fc]
sub edx, edi
xor eax, edx
cdq
add ecx, eax
adc esi, edx
mov dword [ebp - 0xc54], ecx
mov dword [ebp - 0xc50], esi
mov eax, dword [ebp - 0xc54]
or eax, dword [ebp - 0xc50]
jne 0x1003988c
mov dword [ebp - 0x488], 1
jmp 0x10039896
mov dword [ebp - 0x488], 0
mov ecx, dword [ebp - 0x488]
mov dword [0x100a5158], ecx
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
sub edx, dword [ebp - 0x40]
sbb eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
add ecx, edx
adc esi, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], esi
imul edx, dword [0x100a5108], 0x70efde16
mov dword [0x100a5158], edx
movsx eax, word [0x100a513c]
test eax, eax
je 0x10039933
mov ecx, dword [0x100a5144]
xor edx, edx
mov eax, dword [0x100a5100]
mov esi, dword [0x100a5104]
push edx
push ecx
push esi
push eax
call fcn.10073670
mov dword [0x100a5100], eax
mov dword [0x100a5104], edx
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov cl, 8
call fcn.10073780
mov dword [0x100a5108], eax
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
sub ecx, 0xefb7
sbb edx, 0
mov eax, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
add eax, ecx
adc esi, edx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], esi
jmp 0x100399ae
mov ecx, dword [0x100a50e0]
not ecx
mov esi, dword [0x100a50e4]
not esi
movzx eax, word [0x100a510c]
cdq
sub ecx, eax
sbb esi, edx
mov dword [0x100a5120], ecx
mov dword [0x100a5124], esi
mov eax, dword [0x100a50e8]
cdq
sub eax, 0xd6f71f3
mov dword [0x100a50f8], eax
movzx edx, byte [ebp - 1]
movsx eax, word [0x100a513c]
movzx ecx, word [ebp - 0x10]
not ecx
imul eax, ecx
sub edx, eax
mov byte [ebp - 1], dl
mov edx, dword [0x100a5100]
mov eax, dword [0x100a5104]
mov dword [ebp - 0xd04], eax
sub edx, 0xeabd7256
mov byte [ebp - 2], dl
movsx ecx, word [0x100a50ec]
and ecx, 0xb7
mov dword [ebp - 0x2c], ecx
mov edx, 0x23f
sub edx, dword [ebp - 0x190]
sub edx, 0x256
mov eax, dword [ebp - 0x190]
add eax, dword [ebp - 0x190]
cmp edx, eax
je 0x1003a01c
movzx ecx, word [ebp - 0x18]
sub ecx, 0xe8
mov dword [ebp - 0x44], ecx
movzx edx, word [0x100a5128]
imul eax, edx, 0xa9
mov byte [ebp - 2], al
movsx ecx, byte [ebp - 6]
movzx edx, word [0x100a5130]
lea eax, [edx + ecx + 0xf1]
mov word [0x100a5130], ax
movsx eax, byte [0x100a504b]
not eax
cdq
sub eax, dword [0x100a50e0]
mov dword [0x100a50e8], eax
movzx ecx, word [ebp - 0x18]
mov edx, 4
imul eax, edx, 0x403c
mov dword [eax + 0x10155c90], ecx
xor ecx, ecx
mov dword [0x100a5150], 0x2850
mov dword [0x100a5154], ecx
mov edx, dword [0x100a5110]
mov eax, dword [0x100a5114]
mov dword [ebp - 0xc5c], edx
mov dword [ebp - 0xc58], eax
mov ecx, dword [ebp - 0xc5c]
or ecx, dword [ebp - 0xc58]
jne 0x10039a92
mov edx, dword [0x100a50f0]
mov eax, dword [0x100a50f4]
mov dword [ebp - 0xc64], edx
mov dword [ebp - 0xc60], eax
mov ecx, dword [ebp - 0xc64]
or ecx, dword [ebp - 0xc60]
je 0x10039b4e
movzx edx, word [0x100a5148]
imul eax, edx, 0x6d
cdq
mov dword [0x100a5118], eax
mov dword [0x100a511c], edx
cmp dword [0x100a50e8], 0
je 0x10039ac6
mov eax, dword [0x100a5144]
xor ecx, ecx
mov dword [ebp - 0x4d4], eax
mov dword [ebp - 0x4d0], ecx
jmp 0x10039add
mov edx, dword [0x100a5118]
mov eax, dword [0x100a511c]
mov dword [ebp - 0x4d4], edx
mov dword [ebp - 0x4d0], eax
mov ecx, dword [ebp - 0x4d4]
mov edx, dword [ebp - 0x4d0]
mov dword [0x100a5100], ecx
mov dword [0x100a5104], edx
movzx eax, word [0x100a5130]
movsx ecx, byte [0x100a504b]
add eax, ecx
mov word [0x100a5130], ax
mov edx, dword [ebp - 0x2c]
xor eax, eax
xor edx, 0x157c9285
xor eax, 0x91c8
mov dword [0x100a50e0], edx
mov dword [0x100a50e4], eax
cmp dword [ebp - 0x4c], 0
je 0x10039b38
movzx ecx, byte [ebp - 5]
mov dword [ebp - 0x48c], ecx
jmp 0x10039b45
movsx edx, byte [0x100a5026]
mov dword [ebp - 0x48c], edx
mov al, byte [ebp - 0x48c]
mov byte [ebp - 1], al
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
add ecx, 1
adc edx, 0
mov dword [ebp - 0xc6c], ecx
mov dword [ebp - 0xc68], edx
mov eax, dword [0x100a5150]
cmp eax, dword [ebp - 0xc6c]
jne 0x10039e53
mov ecx, dword [0x100a5154]
cmp ecx, dword [ebp - 0xc68]
jne 0x10039e53
cmp dword [0x100a5144], 0
je 0x10039cbb
mov dword [ebp - 0x12c], 0x1685
movsx eax, word [0x100a50ec]
shl eax, 4
cdq
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
movsx eax, byte [ebp - 3]
cdq
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
mov eax, dword [0x100a50e8]
add eax, 0xb1da
cdq
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
xor ecx, eax
xor esi, edx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], esi
movzx edx, byte [ebp - 4]
movzx eax, word [0x100a5130]
sub edx, eax
mov byte [ebp - 4], dl
cmp dword [ebp - 0x12c], 0x151c
jle 0x10039cb6
movsx eax, word [0x100a50ec]
cdq
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
mov dword [ebp - 0xc74], eax
mov dword [ebp - 0xc70], edx
mov dword [ebp - 0xc7c], ecx
mov dword [ebp - 0xc78], esi
mov edx, dword [ebp - 0xc74]
cmp edx, dword [ebp - 0xc7c]
jne 0x10039c6c
mov eax, dword [ebp - 0xc70]
cmp eax, dword [ebp - 0xc78]
jne 0x10039c6c
movzx eax, word [0x100a510c]
add eax, 0x14
cdq
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], esi
movzx edx, word [ebp - 0xc]
movsx eax, byte [ebp - 6]
imul edx, eax
movzx ecx, word [ebp - 0xc]
imul ecx, edx
mov word [ebp - 0xc], cx
jmp 0x10039ca2
movzx edx, byte [str._NgcSignWithUserIdK]
test edx, edx
je 0x10039ca2
movzx eax, word [ebp - 0xc]
sub eax, dword [ebp - 0x48]
movzx ecx, word [ebp - 0xc]
add ecx, eax
mov word [ebp - 0xc], cx
movsx edx, byte [ebp - 6]
imul edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
sub eax, edx
mov dword [ebp - 0x30], eax
movzx ecx, word [ebp - 0x14]
sar ecx, 3
mov byte [ebp - 6], cl
mov edx, dword [ebp - 0x12c]
sub edx, 1
mov dword [ebp - 0x12c], edx
jmp 0x10039be7
jmp 0x10039d42
movzx eax, byte [ebp - 1]
mov ecx, dword [ebp - 0x2c]
sub ecx, eax
jne 0x10039cda
xor edx, edx
mov dword [ebp - 0x5e8], 1
mov dword [ebp - 0x5e4], edx
jmp 0x10039ce5
xorps xmm0, xmm0
movlpd qword [ebp - 0x5e8], xmm0
mov eax, dword [ebp - 0x5e8]
mov ecx, dword [ebp - 0x5e4]
mov dword [0x100a50e0], eax
mov dword [0x100a50e4], ecx
mov eax, dword [0x100a5150]
mov edx, dword [0x100a5154]
mov cl, 3
call fcn.100736b0
mov word [0x100a510c], ax
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0xd08], edx
xor ecx, 0x4486b82d
movzx eax, word [ebp - 0x14]
cdq
xor eax, ecx
mov word [ebp - 0x14], ax
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
add eax, dword [ebp - 0x40]
adc ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], ecx
movsx edx, word [0x100a50ec]
cmp edx, 1
jne 0x10039e53
movzx eax, word [0x100a5148]
cdq
mov ecx, eax
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0xd0c], eax
sub ecx, edx
movzx eax, word [0x100a5148]
cdq
add eax, ecx
mov word [0x100a5148], ax
movsx ecx, byte [0x100a504b]
sub ecx, 0x6a
mov edx, dword [ebp - 0x48]
imul edx, ecx
mov dword [ebp - 0x48], edx
movzx eax, word [0x100a5130]
cdq
mov ecx, dword [ebp - 0x34]
add eax, dword [ebp - 0x38]
adc edx, ecx
mov dword [ebp - 0xc84], eax
mov dword [ebp - 0xc80], edx
mov edx, dword [ebp - 0xc84]
or edx, dword [ebp - 0xc80]
jne 0x10039dc3
mov dword [ebp - 0x490], 1
jmp 0x10039dcd
mov dword [ebp - 0x490], 0
movzx eax, word [ebp - 0x14]
mov ecx, dword [ebp - 0x490]
sub ecx, eax
mov byte [0x100a504b], cl
movzx eax, byte [ebp - 1]
cdq
add eax, 0x1ab41393
mov byte [ebp - 1], al
jmp 0x10039e53
xor edx, edx
mov dword [0x100a5150], 0x2850
mov dword [0x100a5154], edx
mov eax, dword [0x100a5150]
add eax, 0x39
mov word [0x100a50fc], ax
xor ecx, ecx
mov edx, dword [0x100a5100]
mov eax, dword [0x100a5104]
add edx, dword [0x100a5144]
adc eax, ecx
mov ecx, dword [0x100a5100]
mov esi, dword [0x100a5104]
add ecx, edx
adc esi, eax
mov dword [0x100a5100], ecx
mov dword [0x100a5104], esi
movzx eax, byte [ebp - 2]
cdq
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
push esi
push ecx
push edx
push eax
call fcn.10073670
mov ecx, eax
movzx eax, byte [ebp - 2]
cdq
sub eax, ecx
mov byte [ebp - 2], al
mov edx, dword [0x100a5150]
or edx, dword [0x100a5154]
jne 0x10039ede
mov dword [ebp - 0x404], 1
jmp 0x10039ee8
mov dword [ebp - 0x404], 0
movzx eax, byte [str._NgcSignWithUserIdK]
imul eax, dword [ebp - 0x404]
test eax, eax
jne 0x10039f06
mov dword [ebp - 0x494], 1
jmp 0x10039f10
mov dword [ebp - 0x494], 0
movsx ecx, word [0x100a50fc]
mov edx, dword [ebp - 0x494]
xor edx, dword [ebp - 0x2c]
add ecx, edx
not ecx
mov dword [ebp - 0x30], ecx
movzx eax, byte [ebp - 7]
mov ecx, dword [ebp - 0x48]
sub ecx, eax
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x1a0], 0
jmp 0x10039f4e
mov edx, dword [ebp - 0x1a0]
add edx, 2
mov dword [ebp - 0x1a0], edx
cmp dword [ebp - 0x1a0], 0x3aa
jge 0x1003a015
movzx eax, word [ebp - 0xc]
test eax, eax
je 0x10039f87
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0xd14], edx
push ecx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
xor ecx, ecx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
movzx edx, byte [ebp - 2]
jmp 0x1003a000
movzx eax, word [0x100a510c]
add eax, dword [0x100a50e8]
mov dword [0x100a50e8], eax
movsx ecx, word [0x100a5134]
test ecx, ecx
je 0x10039fbd
mov edx, dword [0x100a50e0]
mov eax, dword [0x100a50e4]
mov dword [ebp - 0x5f0], edx
mov dword [ebp - 0x5ec], eax
jmp 0x10039fce
movzx eax, word [ebp - 0x10]
cdq
mov dword [ebp - 0x5f0], eax
mov dword [ebp - 0x5ec], edx
mov ecx, dword [ebp - 0x5f0]
mov dword [0x100a50f8], ecx
movzx eax, word [ebp - 0x14]
movsx edx, word [0x100a50ec]
imul eax, edx
cdq
mov ecx, dword [0x100a5100]
mov edx, dword [0x100a5104]
mov dword [ebp - 0xd18], edx
add eax, ecx
mov byte [ebp - 6], al
mov ax, word [0x100a5128]
add ax, 1
mov word [0x100a5128], ax
jmp 0x10039f3f
xor eax, eax
jmp 0x1003a13c
xor ecx, ecx
mov word [ebp - 0xc], cx
movsx eax, word [0x100a515c]
cdq
mov ecx, dword [0x100a50f0]
mov esi, dword [0x100a50f4]
add ecx, eax
adc esi, edx
mov edx, dword [0x100a50f0]
mov eax, dword [0x100a50f4]
sub edx, ecx
sbb eax, esi
mov dword [0x100a50f0], edx
mov dword [0x100a50f4], eax
movsx eax, byte [0x100a5026]
cdq
push 0xebf94
push 0xb4abe9d6
push edx
push eax
call fcn.10073670
mov word [ebp - 0x14], ax
movzx ecx, byte [ebp - 4]
test ecx, ecx
je 0x1003a092
mov edx, dword [0x100a5100]
mov eax, dword [0x100a5104]
mov dword [ebp - 0x5f8], edx
mov dword [ebp - 0x5f4], eax
jmp 0x1003a0a4
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x5f8], ecx
mov dword [ebp - 0x5f4], edx
mov ax, word [ebp - 0x5f8]
mov word [0x100a5134], ax
movzx ecx, word [0x100a5128]
movzx edx, word [ebp - 0x18]
or ecx, edx
not ecx
movzx eax, word [ebp - 0xc]
lea ecx, [ecx + eax - 0xebea]
test ecx, ecx
jne 0x1003a0d5
mov byte [ebp - 0x4d], 1
jmp 0x1003a0d9
mov byte [ebp - 0x4d], 0
mov dl, byte [ebp - 0x4d]
mov byte [ebp - 2], dl
movzx eax, word [ebp - 0xc]
mov dword [ebp - 0x6a0], eax
cmp dword [ebp - 0x6a0], 0
je 0x1003a0f4
jmp 0x1003a137
movzx eax, word [0x100a5130]
cdq
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
sub ecx, eax
sbb esi, edx
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
add edx, ecx
adc eax, esi
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], eax
movzx ecx, word [0x100a5128]
xor ecx, 0xd01a37a2
movzx edx, byte [ebp - 7]
mov eax, dword [0x100a5108]
sub eax, edx
add ecx, eax
mov word [0x100a512c], cx
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret