Function at 0x100488a0
Capabilities:
Identify system language via api
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100ae4e0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
sub esp, 0xac4
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov eax, dword [0x100d3140]
mov word [ebp - 0x548], ax
xor ecx, ecx
mov dword [ebp - 0x44], 0xbbd9
mov dword [ebp - 0x40], ecx
mov edx, dword [0x100d31a0]
mov eax, dword [0x100d31a4]
mov dword [ebp - 0x94c], eax
mov byte [ebp - 0x13], dl
mov ecx, 0x29ee
mov word [ebp - 0x2c], cx
movsx eax, byte [0x100d304e]
cdq
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
xor edx, edx
mov dword [ebp - 0x64], 0xf4704933
mov dword [ebp - 0x60], edx
mov byte [ebp - 0x17], 0xa9
mov eax, 0xffff98c6
mov word [ebp - 0x24], ax
movsx eax, word [0x100d3130]
cdq
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
mov ecx, 0xffffe62d
mov word [ebp - 0x34], cx
mov byte [ebp - 0x16], 0x76
mov edx, dword [0x100d3188]
mov eax, dword [0x100d318c]
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x7c], eax
mov byte [ebp - 0x11], 0xc3
mov eax, dword [0x100d3190]
cdq
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
xor ecx, ecx
mov dword [ebp - 0x78], 0x66574f77
mov dword [ebp - 0x74], ecx
mov edx, 0xb548
mov word [ebp - 0x20], dx
mov byte [ebp - 0x15], 0x19
mov eax, 0xef31
mov word [ebp - 0x1c], ax
xor ecx, ecx
mov dword [ebp - 0x3c], 0xefb81b2f
mov dword [ebp - 0x38], ecx
mov edx, dword [0x100d31a8]
mov eax, dword [0x100d31ac]
mov dword [ebp - 0x948], eax
mov byte [ebp - 0x14], dl
mov dword [ebp - 0x68], 0xe94e8a3b
mov ecx, 0xffffc014
mov word [ebp - 0x30], cx
mov edx, 0xe9ae
mov word [ebp - 0x28], dx
mov eax, dword [0x100d31a0]
mov ecx, dword [0x100d31a4]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], ecx
mov edx, dword [0x100d3140]
mov byte [ebp - 0x18], dl
mov al, byte [0x100d3168]
mov byte [ebp - 0x12], al
mov ecx, dword [0x100d3144]
mov word [ebp - 0x54c], cx
mov dl, byte [0x100d3160]
mov byte [ebp - 0xd9], dl
movzx ax, byte [0x100d3027]
mov word [ebp - 0x550], ax
mov cl, byte [0x100d3158]
mov byte [ebp - 0xe1], cl
mov edx, 0x1ad
mov word [ebp - 0x508], dx
mov dword [ebp - 0x944], 0xdc
movsx eax, byte [0x100d304e]
mov dword [ebp - 0x940], eax
mov dword [ebp - 0x93c], 0x9511fc2b
mov eax, dword [0x100d3134]
cdq
mov dword [ebp - 0xa48], eax
mov dword [ebp - 0xa44], edx
mov cx, word [0x100d3158]
mov word [ebp - 0x50c], cx
xor edx, edx
mov dword [ebp - 0xa50], 0x4353
mov dword [ebp - 0xa4c], edx
movsx eax, word [0x100d3130]
cdq
mov dword [ebp - 0xa58], eax
mov dword [ebp - 0xa54], edx
movzx eax, word [0x100d315c]
mov dword [ebp - 0x938], eax
mov dword [ebp - 0x934], 0x1436
mov byte [ebp - 0xf2], 0x32
mov dword [ebp - 0x930], 0xfbdb9652
mov byte [ebp - 0xf1], 0x94
mov ecx, dword [0x100d31a8]
mov edx, dword [0x100d31ac]
mov dword [ebp - 0x92c], edx
mov dword [ebp - 0x928], ecx
movsx eax, word [ebp - 0x2c]
push eax
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov word [ebp - 0x30], ax
movsx ecx, word [ebp - 0x30]
test ecx, ecx
jle 0x10048aeb
mov dword [ebp - 0x3ac], 1
jmp 0x10048af5
mov dword [ebp - 0x3ac], 0
movsx edx, word [ebp - 0x30]
cmp edx, 0x62
jle 0x10048b0a
mov dword [ebp - 0x3b0], 1
jmp 0x10048b14
mov dword [ebp - 0x3b0], 0
mov eax, dword [ebp - 0x3ac]
cmp eax, dword [ebp - 0x3b0]
je 0x10048cb1
mov ecx, dword [0x100d3140]
xor edx, edx
mov dword [ebp - 0x558], ecx
mov dword [ebp - 0x554], edx
mov eax, dword [ebp - 0x554]
cmp eax, dword [0x100d316c]
ja 0x10048c1f
jb 0x10048b60
mov ecx, dword [ebp - 0x558]
cmp ecx, dword [0x100d3168]
ja 0x10048c1f
mov ecx, dword [0x100d3170]
mov edx, dword [0x100d31a0]
mov eax, dword [0x100d31a4]
mov dword [ebp - 0x924], eax
sub ecx, edx
movzx eax, byte [0x100d3063]
cdq
mov edx, dword [0x100d3180]
mov esi, dword [0x100d3184]
mov dword [ebp - 0x920], esi
or edx, eax
sub ecx, edx
mov byte [ebp - 0x15], cl
movsx eax, byte [ebp - 0x14]
cdq
push edx
push eax
mov eax, dword [ebp - 0x48]
push eax
mov ecx, dword [ebp - 0x4c]
push ecx
call fcn.100a25b0
mov ecx, dword [ebp - 0x4c]
sub ecx, eax
mov eax, dword [ebp - 0x48]
sbb eax, edx
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x48], eax
movsx eax, byte [ebp - 0x14]
cdq
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0x91c], edx
xor ecx, eax
mov eax, dword [0x100d3120]
xor eax, 0xa7
xor ecx, eax
mov word [0x100d31b0], cx
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
push 0
push 0x34f04d4e
push edx
push ecx
call fcn.100a25b0
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
movzx eax, word [ebp - 0x28]
cdq
add eax, dword [0x100d3148]
adc edx, dword [0x100d314c]
mov dword [0x100d3148], eax
mov dword [0x100d314c], edx
jmp 0x10048cac
movsx eax, word [ebp - 0x24]
xor eax, 0x57
mov ecx, dword [0x100d311c]
imul ecx, eax
mov dword [0x100d311c], ecx
movzx eax, byte [0x100d304f]
cdq
add eax, 0xd41a69e9
mov dword [0x100d3174], eax
movzx edx, byte [ebp - 0x17]
imul eax, edx, 0xf6017dde
mov byte [ebp - 0x16], al
movzx ecx, byte [0x100d3063]
movzx edx, byte [ebp - 0x11]
sub ecx, edx
mov byte [0x100d3063], cl
mov eax, dword [ebp - 0x4c]
or eax, dword [ebp - 0x48]
je 0x10048c89
mov ecx, dword [0x100d3120]
mov edx, dword [0x100d3124]
mov dword [ebp - 0x380], ecx
mov dword [ebp - 0x37c], edx
jmp 0x10048c9a
movzx eax, byte [ebp - 0x12]
cdq
mov dword [ebp - 0x380], eax
mov dword [ebp - 0x37c], edx
mov eax, dword [ebp - 0x380]
mov ecx, dword [ebp - 0x37c]
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], ecx
jmp 0x10048d77
movsx edx, word [0x100d3130]
test edx, edx
je 0x10048d77
movsx eax, byte [ebp - 0x16]
cdq
mov ecx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x40]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov ecx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x40]
or ecx, eax
or esi, edx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], esi
movsx eax, byte [ebp - 0x16]
cdq
mov edx, dword [ebp - 0x4c]
sub edx, eax
add edx, 0xfde60744
mov word [ebp - 0x34], dx
movzx eax, byte [ebp - 0x17]
test eax, eax
jne 0x10048d0c
mov dword [ebp - 0x3b4], 1
jmp 0x10048d16
mov dword [ebp - 0x3b4], 0
movzx ecx, byte [ebp - 0x17]
mov edx, dword [ebp - 0x3b4]
sub edx, ecx
not edx
mov eax, dword [0x100d3170]
sub eax, edx
xor ecx, ecx
mov dword [0x100d3188], eax
mov dword [0x100d318c], ecx
movzx edx, byte [ebp - 0x11]
imul eax, edx, 0xc508
cdq
add eax, dword [0x100d3150]
adc edx, dword [0x100d3154]
mov dword [0x100d3150], eax
mov dword [0x100d3154], edx
movzx eax, byte [0x100d304f]
add eax, dword [0x100d31b4]
mov dword [0x100d3140], eax
mov cx, word [0x100d3150]
mov word [ebp - 0x1c], cx
mov edx, dword [0x100d3c78]
mov dword [ebp - 0x94], edx
mov eax, dword [0x100d3174]
xor ecx, ecx
mov dword [ebp - 0x560], eax
mov dword [ebp - 0x55c], ecx
mov edx, dword [ebp - 0x70]
cmp edx, dword [ebp - 0x560]
jne 0x10048f6c
mov eax, dword [ebp - 0x6c]
cmp eax, dword [ebp - 0x55c]
jne 0x10048f6c
xorps xmm0, xmm0
movlpd qword [ebp - 0x54], xmm0
push 0
push 0x5e
mov ecx, dword [ebp - 0x48]
push ecx
mov edx, dword [ebp - 0x4c]
push edx
call fcn.100a25b0
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
movzx eax, byte [ebp - 0x12]
movzx ecx, byte [0x100d3063]
xor eax, ecx
movzx edx, byte [ebp - 0x12]
add edx, eax
mov byte [ebp - 0x12], dl
movzx eax, byte [ebp - 0x18]
cdq
mov ecx, dword [0x100d3180]
mov esi, dword [0x100d3184]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov ecx, dword [0x100d3180]
mov esi, dword [0x100d3184]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov dword [0x100d3180], eax
mov dword [0x100d3184], edx
movsx edx, word [ebp - 0x2c]
movzx eax, word [0x100d315c]
xor edx, eax
mov word [ebp - 0x2c], dx
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x568], ecx
mov dword [ebp - 0x564], edx
mov eax, dword [ebp - 0x568]
or eax, dword [ebp - 0x564]
je 0x10048e59
jmp 0x10048f67
movsx eax, byte [ebp - 0x16]
cdq
mov ecx, dword [0x100d3174]
xor esi, esi
mov edi, dword [0x100d3188]
not edi
mov ebx, dword [0x100d318c]
not ebx
sub ecx, edi
sbb esi, ebx
push esi
push ecx
push edx
push eax
call fcn.100a25b0
not eax
not edx
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
movzx eax, word [ebp - 0x20]
cdq
xor ecx, ecx
mov esi, dword [ebp - 0x64]
mov edi, dword [ebp - 0x60]
add esi, dword [0x100d3144]
adc edi, ecx
push edi
push esi
push edx
push eax
call fcn.100a25b0
not eax
not edx
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], edx
imul edx, dword [0x100d3174], 0xd
xor eax, eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], eax
movzx ecx, byte [ebp - 0x18]
test ecx, ecx
jne 0x10048ee0
xor edx, edx
mov dword [ebp - 0x3cc], 1
mov dword [ebp - 0x3c8], edx
jmp 0x10048eeb
xorps xmm0, xmm0
movlpd qword [ebp - 0x3cc], xmm0
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x58]
not eax
not ecx
add eax, dword [ebp - 0x3cc]
adc ecx, dword [ebp - 0x3c8]
mov dword [ebp - 0x570], eax
mov dword [ebp - 0x56c], ecx
mov edx, dword [ebp - 0x570]
or edx, dword [ebp - 0x56c]
jne 0x10048f27
mov dword [ebp - 0x3b8], 1
jmp 0x10048f31
mov dword [ebp - 0x3b8], 0
movzx eax, word [ebp - 0x28]
movsx ecx, byte [ebp - 0x13]
xor eax, ecx
imul eax, dword [ebp - 0x3b8]
cdq
mov dword [0x100d3148], eax
mov dword [0x100d314c], edx
mov dx, word [0x100d3c78]
mov word [ebp - 0x1c], dx
movsx eax, word [ebp - 0x2c]
add eax, 0xaf
mov dword [0x100d3190], eax
jmp 0x10049096
movsx ecx, word [ebp - 0x30]
movsx edx, byte [0x100d3026]
movzx eax, word [ebp - 0x1c]
movzx esi, byte [0x100d304f]
or eax, esi
imul edx, eax
imul ecx, edx
mov dword [ebp - 0x68], ecx
movsx ecx, byte [0x100d304e]
movsx edx, byte [0x100d304e]
add ecx, dword [ebp - 0x68]
add edx, ecx
mov dword [0x100d311c], edx
mov eax, dword [0x100d3198]
mov ecx, dword [0x100d319c]
sub eax, 1
sbb ecx, 0
mov dword [0x100d3198], eax
mov dword [0x100d319c], ecx
movsx eax, byte [ebp - 0x15]
cdq
mov ecx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x74], esi
movzx edx, word [ebp - 0x28]
mov esi, dword [0x100d3174]
sub esi, edx
xor edi, edi
mov ecx, dword [ebp - 0x4c]
not ecx
mov ebx, dword [ebp - 0x48]
not ebx
movzx eax, byte [ebp - 0x17]
cdq
push edx
push eax
push ebx
push ecx
call fcn.100a25b0
push edx
push eax
push edi
push esi
call fcn.100a25b0
mov dword [ebp - 0x578], eax
mov dword [ebp - 0x574], edx
mov edx, dword [ebp - 0x578]
or edx, dword [ebp - 0x574]
jne 0x1004902c
mov dword [ebp - 0x3bc], 1
jmp 0x10049036
mov dword [ebp - 0x3bc], 0
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x4c]
sub ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x48]
sbb edx, eax
mov eax, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x38]
push edx
push ecx
push esi
push eax
call fcn.100a25b0
mov dword [ebp - 0x580], eax
mov dword [ebp - 0x57c], edx
mov ecx, dword [ebp - 0x580]
or ecx, dword [ebp - 0x57c]
jne 0x10049079
mov dword [ebp - 0xfc], 1
jmp 0x10049083
mov dword [ebp - 0xfc], 0
mov eax, dword [ebp - 0x3bc]
add eax, dword [ebp - 0xfc]
cdq
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
mov edx, dword [ebp - 0x94]
add edx, 0x6da
mov dword [ebp - 0x1c0], edx
jmp 0x100490b6
jmp 0x100490cc
jmp 0x100490f1
mov eax, dword [ebp - 0x94]
add eax, 0x737
mov dword [ebp - 0x1c8], eax
mov ecx, dword [0x100d3140]
shr ecx, 6
mov byte [ebp - 0x14], cl
mov edx, dword [0x100d3170]
sub edx, 0x499dd61b
xor eax, eax
push eax
push edx
mov ecx, dword [ebp - 0x6c]
push ecx
mov edx, dword [ebp - 0x70]
push edx
call fcn.100a25b0
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
movsx eax, byte [ebp - 0x13]
cdq
mov ecx, dword [0x100d314c]
push ecx
mov ecx, dword [0x100d3148]
push ecx
push edx
push eax
call fcn.100a25b0
mov ecx, eax
movsx eax, byte [ebp - 0x13]
cdq
add eax, ecx
mov byte [ebp - 0x13], al
movsx edx, word [ebp - 0x2c]
add edx, 0x5c9c74f4
mov dword [0x100d3144], edx
movsx eax, word [ebp - 0x30]
cdq
mov ecx, dword [0x100d3198]
mov edx, dword [0x100d319c]
mov dword [ebp - 0x918], edx
add eax, ecx
mov word [ebp - 0x30], ax
mov eax, dword [ebp - 0x94]
add eax, 0x575
mov dword [ebp - 0x1c4], eax
movzx eax, word [ebp - 0x20]
cdq
mov ecx, dword [0x100d3198]
mov esi, dword [0x100d319c]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov ecx, dword [0x100d3198]
mov esi, dword [0x100d319c]
add ecx, eax
adc esi, edx
mov dword [0x100d3198], ecx
mov dword [0x100d319c], esi
movzx eax, byte [0x100d3027]
cdq
mov edx, dword [0x100d31a8]
mov ecx, dword [0x100d31ac]
mov dword [ebp - 0x914], ecx
add eax, edx
mov byte [0x100d3027], al
movzx edx, word [ebp - 0x28]
xor edx, 0xa8
mov byte [0x100d3026], dl
movsx eax, word [ebp - 0x2c]
add eax, dword [0x100d3158]
mov ecx, dword [0x100d3158]
sub ecx, eax
mov dword [0x100d3158], ecx
movzx edx, byte [ebp - 0x12]
test edx, edx
je 0x10049230
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x3c4], eax
mov dword [ebp - 0x3c0], ecx
jmp 0x10049244
movsx eax, byte [0x100d304e]
cdq
mov dword [ebp - 0x3c4], eax
mov dword [ebp - 0x3c0], edx
mov dx, word [ebp - 0x3c4]
mov word [0x100d312c], dx
mov eax, dword [0x100d3c78]
mov dword [ebp - 0x9c], eax
push 0xb3
push 0
call fcn.1005b280
add esp, 8
cwde
cdq
mov dword [0x100d3188], eax
mov dword [0x100d318c], edx
mov ecx, dword [0x100d3188]
or ecx, dword [0x100d318c]
jne 0x1004967e
movsx eax, word [0x100d31b0]
cdq
mov dword [ebp - 0x588], eax
mov dword [ebp - 0x584], edx
mov edx, dword [ebp - 0x7c]
cmp edx, dword [ebp - 0x584]
jb 0x100492c3
ja 0x100492b7
mov eax, dword [ebp - 0x80]
cmp eax, dword [ebp - 0x588]
jbe 0x100492c3
mov dword [ebp - 0x100], 1
jmp 0x100492cd
mov dword [ebp - 0x100], 0
movsx eax, byte [ebp - 0x14]
cdq
mov dword [ebp - 0x590], eax
mov dword [ebp - 0x58c], edx
mov ecx, dword [ebp - 0x58c]
cmp ecx, dword [0x100d314c]
jg 0x10049310
jl 0x100492fc
mov edx, dword [ebp - 0x590]
cmp edx, dword [0x100d3148]
ja 0x10049310
xor eax, eax
mov dword [ebp - 0x3d4], 1
mov dword [ebp - 0x3d0], eax
jmp 0x1004931b
xorps xmm0, xmm0
movlpd qword [ebp - 0x3d4], xmm0
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x598], ecx
mov dword [ebp - 0x594], edx
mov eax, dword [ebp - 0x3d4]
cmp eax, dword [ebp - 0x598]
jne 0x10049349
mov ecx, dword [ebp - 0x3d0]
cmp ecx, dword [ebp - 0x594]
je 0x10049355
mov dword [ebp - 0x104], 1
jmp 0x1004935f
mov dword [ebp - 0x104], 0
movzx edx, byte [0x100d304f]
mov eax, 0xd2
sub eax, edx
add eax, dword [ebp - 0x100]
cmp eax, dword [ebp - 0x104]
jg 0x10049465
mov ecx, dword [0x100d3148]
or ecx, dword [0x100d314c]
jne 0x100493a1
xor edx, edx
mov dword [ebp - 0x3dc], 1
mov dword [ebp - 0x3d8], edx
jmp 0x100493ac
xorps xmm0, xmm0
movlpd qword [ebp - 0x3dc], xmm0
movsx eax, word [0x100d312c]
not eax
sub eax, dword [0x100d311c]
jne 0x100493d1
xor ecx, ecx
mov dword [ebp - 0x5a0], 1
mov dword [ebp - 0x59c], ecx
jmp 0x100493dc
xorps xmm0, xmm0
movlpd qword [ebp - 0x5a0], xmm0
movsx eax, byte [ebp - 0x16]
cdq
mov esi, eax
push 0xfd693
push 0x5d54e6ae
mov edx, dword [ebp - 0x3d8]
push edx
mov eax, dword [ebp - 0x3dc]
push eax
call fcn.100a25b0
sub eax, dword [ebp - 0x5a0]
and esi, eax
mov dword [0x100d3174], esi
movsx ecx, byte [0x100d3026]
sub ecx, dword [ebp - 0x68]
movsx edx, byte [0x100d3026]
add edx, ecx
mov byte [0x100d3026], dl
movzx eax, byte [0x100d3027]
mov ecx, 4
imul edx, ecx, 0x61b2
mov dword [edx + 0x100d3d00], eax
mov dword [0x100d3140], 8
push 0
push 0x9051
mov eax, dword [ebp - 0x48]
push eax
mov ecx, dword [ebp - 0x4c]
push ecx
call fcn.100a25b0
mov byte [ebp - 0x17], al
jmp 0x10049679
movzx edx, word [ebp - 0x1c]
test edx, edx
je 0x10049613
movzx eax, word [0x100d315c]
add eax, 0xc4
cdq
mov dword [0x100d3138], eax
mov dword [0x100d313c], edx
movzx eax, byte [0x100d304f]
test eax, eax
jne 0x100494a0
mov dword [ebp - 0x108], 1
jmp 0x100494aa
mov dword [ebp - 0x108], 0
movsx ecx, word [ebp - 0x30]
imul ecx, dword [0x100d3140]
xor ecx, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x910], eax
mov eax, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x38]
mov dword [ebp - 0x90c], esi
add edx, eax
mov eax, dword [0x100d3140]
sub eax, dword [ebp - 0x108]
add edx, eax
sub ecx, edx
mov byte [0x100d304f], cl
movsx ecx, word [0x100d312c]
movzx edx, byte [ebp - 0x12]
sub ecx, edx
movsx eax, word [0x100d312c]
sub eax, ecx
mov word [0x100d312c], ax
mov ecx, dword [0x100d31a0]
mov edx, dword [0x100d31a4]
mov dword [ebp - 0x5a8], ecx
mov dword [ebp - 0x5a4], edx
mov eax, dword [ebp - 0x5a8]
or eax, dword [ebp - 0x5a4]
jne 0x1004953d
xor ecx, ecx
mov dword [ebp - 0x3e4], 1
mov dword [ebp - 0x3e0], ecx
jmp 0x10049548
xorps xmm0, xmm0
movlpd qword [ebp - 0x3e4], xmm0
mov edx, dword [0x100d3168]
or edx, dword [0x100d316c]
jne 0x10049562
mov dword [ebp - 0x10c], 1
jmp 0x1004956c
mov dword [ebp - 0x10c], 0
mov ecx, dword [0x100d3188]
not ecx
mov esi, dword [0x100d318c]
not esi
add ecx, dword [ebp - 0x3e4]
adc esi, dword [ebp - 0x3e0]
movzx eax, byte [0x100d304f]
imul eax, dword [ebp - 0x10c]
cdq
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x5b0], ecx
mov dword [ebp - 0x5ac], esi
mov edx, dword [ebp - 0x5b0]
or edx, dword [ebp - 0x5ac]
jne 0x100495c1
mov dword [ebp - 0x110], 1
jmp 0x100495cb
mov dword [ebp - 0x110], 0
movsx eax, word [0x100d312c]
imul ecx, eax, 0x29db46ad
xor ecx, 0x1f52
imul ecx, dword [ebp - 0x110]
xor edx, edx
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x74], edx
mov eax, dword [0x100d3150]
add eax, 0xb4263389
mov byte [ebp - 0x18], al
movsx eax, byte [ebp - 0x16]
cdq
mov ecx, dword [ebp - 0x6c]
push ecx
mov ecx, dword [ebp - 0x70]
push ecx
push edx
push eax
call fcn.100a25b0
mov byte [ebp - 0x16], al
jmp 0x10049679
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x58]
not edx
not eax
mov dword [ebp - 0x5b8], edx
mov dword [ebp - 0x5b4], eax
mov ecx, dword [ebp - 0x5b8]
or ecx, dword [ebp - 0x5b4]
je 0x10049679
mov byte [ebp - 0x15], 0x63
mov dl, byte [0x100d3c78]
mov byte [ebp - 0x18], dl
mov eax, dword [ebp - 0x80]
add eax, 0x348456ae
mov word [0x100d315c], ax
mov cx, word [0x100d3c78]
mov word [0x100d3130], cx
movsx eax, byte [0x100d3026]
cdq
mov edx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x908], ecx
add eax, edx
mov byte [ebp - 0x12], al
jmp 0x100496fe
movzx eax, word [ebp - 0x1c]
xor eax, 0xf
cdq
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
mov edx, dword [0x100d3140]
xor eax, eax
mov ecx, dword [0x100d318c]
push ecx
mov ecx, dword [0x100d3188]
push ecx
push eax
push edx
call fcn.100a25b0
mov dword [0x100d3140], eax
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x60]
sub edx, 0x11c0
sbb eax, 0
mov ecx, dword [0x100d31a8]
mov esi, dword [0x100d31ac]
sub ecx, edx
sbb esi, eax
mov dword [0x100d31a8], ecx
mov dword [0x100d31ac], esi
mov edx, 0x4b
mov word [0x100d3130], dx
movzx eax, byte [ebp - 0x11]
cdq
push 0xd01f3
push 0x3deddcad
push edx
push eax
call fcn.100a25b0
mov byte [ebp - 0x17], al
mov eax, dword [ebp - 0x9c]
add eax, 0x4ce
mov dword [ebp - 0xb8], eax
mov ecx, dword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
mov dword [ebp - 0x5c0], ecx
mov dword [ebp - 0x5bc], edx
mov eax, dword [ebp - 0x48]
cmp eax, dword [ebp - 0x5bc]
jg 0x10049745
jl 0x10049739
mov ecx, dword [ebp - 0x4c]
cmp ecx, dword [ebp - 0x5c0]
ja 0x10049745
mov dword [ebp - 0x114], 1
jmp 0x1004974f
mov dword [ebp - 0x114], 0
cmp dword [ebp - 0x48], 0
jg 0x10049769
jl 0x1004975d
cmp dword [ebp - 0x4c], 0x15
ja 0x10049769
mov dword [ebp - 0x118], 1
jmp 0x10049773
mov dword [ebp - 0x118], 0
mov edx, dword [ebp - 0x114]
cmp edx, dword [ebp - 0x118]
jg 0x10049adc
mov dword [ebp - 0x98], 0x35e
jmp 0x100497a0
mov eax, dword [ebp - 0x98]
sub eax, 1
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 0
jle 0x10049adc
call dword [sym.imp.USER32.dll_GetDoubleClickTime]
mov byte [0x100d304e], al
movsx ecx, byte [0x100d304e]
test ecx, ecx
jge 0x100497cf
mov dword [ebp - 0x11c], 1
jmp 0x100497d9
mov dword [ebp - 0x11c], 0
movsx edx, byte [0x100d304e]
cmp edx, 0x4b
jge 0x100497f1
mov dword [ebp - 0x120], 1
jmp 0x100497fb
mov dword [ebp - 0x120], 0
mov eax, dword [ebp - 0x11c]
cmp eax, dword [ebp - 0x120]
jle 0x100498de
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x40]
xor ecx, 0x2668543c
xor edx, 0x1f632
mov dword [0x100d3150], ecx
mov dword [0x100d3154], edx
movsx eax, byte [ebp - 0x16]
movsx ecx, word [0x100d312c]
and eax, ecx
not eax
cdq
mov esi, eax
mov edi, edx
movsx eax, word [ebp - 0x34]
cdq
mov ecx, dword [0x100d319c]
sub eax, dword [0x100d3198]
sbb edx, ecx
push 0
push 0x7f96
push edx
push eax
call fcn.100a25b0
sub esi, eax
sbb edi, edx
mov dword [0x100d31a8], esi
mov dword [0x100d31ac], edi
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x60]
add edx, dword [ebp - 0x64]
adc eax, ecx
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], eax
movsx eax, byte [ebp - 0x15]
not eax
cdq
sub eax, dword [0x100d3138]
sbb edx, dword [0x100d313c]
mov ecx, dword [0x100d3168]
xor ecx, 0x76257fbd
mov esi, dword [0x100d316c]
xor esi, 0
mov edi, dword [ebp - 0x40]
sub ecx, dword [ebp - 0x44]
sbb esi, edi
add eax, ecx
adc edx, esi
mov dword [0x100d3168], eax
mov dword [0x100d316c], edx
movzx edx, byte [ebp - 0x12]
sub edx, 0x70c48c9f
mov byte [ebp - 0x14], dl
mov eax, 0x2b3c
mov word [ebp - 0x1c], ax
jmp 0x10049ace
movzx ecx, byte [0x100d3027]
not ecx
test ecx, ecx
jne 0x100498fd
mov edx, dword [0x100d3150]
or edx, dword [0x100d3154]
je 0x100499c3
movsx eax, byte [ebp - 0x14]
test eax, eax
jne 0x10049911
mov dword [ebp - 0x124], 1
jmp 0x1004991b
mov dword [ebp - 0x124], 0
mov ecx, dword [0x100d31a0]
mov edx, dword [0x100d31a4]
mov eax, dword [0x100d313c]
push eax
mov eax, dword [0x100d3138]
push eax
push edx
push ecx
call fcn.100a25b0
movsx ecx, word [ebp - 0x30]
add ecx, dword [ebp - 0x124]
mov esi, dword [0x100d3140]
not esi
movsx edi, word [ebp - 0x24]
xor esi, edi
add ecx, esi
xor esi, esi
add eax, ecx
adc edx, esi
mov dword [0x100d3168], eax
mov dword [0x100d316c], edx
movzx eax, byte [ebp - 0x12]
cdq
sub eax, 0xbadff497
mov byte [ebp - 0x11], al
movzx eax, word [ebp - 0x20]
add eax, 0x60a9972e
cdq
mov dword [0x100d3168], eax
mov dword [0x100d316c], edx
movsx edx, word [0x100d3128]
movzx eax, byte [ebp - 0x11]
and edx, eax
movsx ecx, word [0x100d3128]
or ecx, edx
mov word [0x100d3128], cx
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
add edx, 0x7b47
adc eax, 0
mov dword [0x100d3120], edx
mov dword [0x100d3124], eax
jmp 0x10049ace
movzx ecx, byte [0x100d304f]
test ecx, ecx
je 0x10049a4d
push 0
push 0x4ee0e359
mov edx, dword [0x100d3154]
push edx
mov eax, dword [0x100d3150]
push eax
call fcn.100a25b0
mov ecx, dword [0x100d3198]
mov esi, dword [0x100d319c]
sub ecx, eax
sbb esi, edx
mov dword [0x100d3198], ecx
mov dword [0x100d319c], esi
movzx edx, byte [ebp - 0x12]
sub edx, dword [0x100d3170]
mov byte [ebp - 0x12], dl
mov eax, dword [0x100d3144]
add eax, dword [ebp - 0x70]
not eax
mov dword [0x100d311c], eax
movsx ecx, byte [ebp - 0x15]
shl ecx, 4
mov byte [ebp - 0x13], cl
push 0
push 0x327
mov edx, dword [ebp - 0x6c]
push edx
mov eax, dword [ebp - 0x70]
push eax
call fcn.100a25b0
mov dword [0x100d3168], eax
mov dword [0x100d316c], edx
jmp 0x10049ace
mov ecx, 0x88d0
test ecx, ecx
je 0x10049ace
mov edx, dword [0x100d3158]
add edx, 0xc8
mov dword [ebp - 0x68], edx
mov al, byte [ebp - 0x80]
mov byte [ebp - 0x11], al
mov ecx, dword [0x100d3c78]
xor edx, edx
mov dword [0x100d3148], ecx
mov dword [0x100d314c], edx
movsx eax, byte [ebp - 0x16]
movsx ecx, byte [ebp - 0x16]
add eax, ecx
movsx edx, byte [ebp - 0x16]
sub edx, eax
mov byte [ebp - 0x16], dl
mov eax, dword [0x100d3150]
or eax, dword [0x100d3154]
je 0x10049ab3
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x3ec], ecx
mov dword [ebp - 0x3e8], edx
jmp 0x10049ac5
mov eax, dword [0x100d3190]
cdq
mov dword [ebp - 0x3ec], eax
mov dword [ebp - 0x3e8], edx
mov al, byte [ebp - 0x3ec]
mov byte [ebp - 0x18], al
mov cl, byte [ebp - 0x13]
add cl, 1
mov byte [ebp - 0x13], cl
jmp 0x10049791
mov edx, dword [ebp - 0x9c]
add edx, 0x6b7
mov dword [ebp - 0x1d4], edx
movsx eax, word [ebp - 0x30]
cdq
mov ecx, dword [0x100d3180]
mov esi, dword [0x100d3184]
or ecx, eax
or esi, edx
movzx eax, byte [0x100d3063]
cdq
mov dword [ebp - 0x5c8], ecx
mov dword [ebp - 0x5c4], esi
mov dword [ebp - 0x5d0], eax
mov dword [ebp - 0x5cc], edx
mov edx, dword [ebp - 0x5c4]
cmp edx, dword [ebp - 0x5cc]
jb 0x10049b4d
ja 0x10049b41
mov eax, dword [ebp - 0x5c8]
cmp eax, dword [ebp - 0x5d0]
jbe 0x10049b4d
mov dword [ebp - 0x128], 1
jmp 0x10049b57
mov dword [ebp - 0x128], 0
mov ecx, dword [0x100d31b4]
not ecx
test ecx, ecx
je 0x10049b82
mov edx, dword [0x100d3174]
not edx
movzx eax, byte [ebp - 0x17]
imul edx, eax
test edx, edx
je 0x10049b82
mov dword [ebp - 0x12c], 0
jmp 0x10049b8c
mov dword [ebp - 0x12c], 1
mov ecx, dword [ebp - 0x128]
cmp ecx, dword [ebp - 0x12c]
jne 0x10049f5c
mov edx, dword [0x100d3148]
push edx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
xor ecx, ecx
mov dword [0x100d3150], eax
mov dword [0x100d3154], ecx
movzx edx, byte [0x100d3027]
test edx, edx
je 0x10049c42
movsx eax, word [ebp - 0x30]
add eax, 0x9d9a
cdq
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
movzx eax, word [ebp - 0x20]
imul ecx, eax, 0x750b
mov byte [0x100d3026], cl
movsx eax, byte [ebp - 0x13]
cdq
mov ecx, dword [0x100d313c]
push ecx
mov ecx, dword [0x100d3138]
push ecx
push edx
push eax
call fcn.100a25b0
mov ecx, eax
movsx eax, byte [ebp - 0x13]
cdq
sub eax, ecx
mov byte [ebp - 0x13], al
mov dx, word [0x100d3c78]
mov word [ebp - 0x24], dx
movzx eax, byte [0x100d3027]
shl eax, 2
cdq
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
movsx eax, word [0x100d31b0]
sub eax, 0xee9f
cdq
mov dword [0x100d3160], eax
mov dword [0x100d3164], edx
jmp 0x10049f5c
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0x5d8], eax
mov dword [ebp - 0x5d4], ecx
cmp dword [ebp - 0x5d4], 0x716b2
ja 0x10049d22
jb 0x10049c76
cmp dword [ebp - 0x5d8], 0xf3f71cad
jae 0x10049d22
mov edx, dword [0x100d3170]
xor eax, eax
add edx, dword [ebp - 0x4c]
adc eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x4c]
sub ecx, edx
mov edx, dword [ebp - 0x48]
sbb edx, eax
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x74]
mov dword [ebp - 0x904], ecx
add eax, 0x7203
mov byte [ebp - 0x11], al
movsx edx, word [0x100d3130]
test edx, edx
je 0x10049ccc
mov eax, dword [0x100d31a0]
mov ecx, dword [0x100d31a4]
mov dword [ebp - 0x3f4], eax
mov dword [ebp - 0x3f0], ecx
jmp 0x10049ce3
mov edx, dword [0x100d3198]
mov eax, dword [0x100d319c]
mov dword [ebp - 0x3f4], edx
mov dword [ebp - 0x3f0], eax
mov cx, word [ebp - 0x3f4]
mov word [ebp - 0x20], cx
movzx edx, byte [ebp - 0x17]
imul edx, dword [0x100d3144]
mov byte [ebp - 0x17], dl
movzx eax, word [ebp - 0x1c]
cdq
mov ecx, dword [0x100d31a8]
mov esi, dword [0x100d31ac]
xor ecx, eax
xor esi, edx
mov dword [0x100d31a8], ecx
mov dword [0x100d31ac], esi
jmp 0x10049f5c
mov ecx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
movsx eax, byte [ebp - 0x15]
cdq
mov dword [ebp - 0x5e0], ecx
mov dword [ebp - 0x5dc], esi
mov dword [ebp - 0x5e8], eax
mov dword [ebp - 0x5e4], edx
mov edx, dword [ebp - 0x5dc]
cmp edx, dword [ebp - 0x5e4]
jg 0x10049d77
jl 0x10049d63
mov eax, dword [ebp - 0x5e0]
cmp eax, dword [ebp - 0x5e8]
ja 0x10049d77
xor ecx, ecx
mov dword [ebp - 0x3fc], 1
mov dword [ebp - 0x3f8], ecx
jmp 0x10049d82
xorps xmm0, xmm0
movlpd qword [ebp - 0x3fc], xmm0
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x5f0], edx
mov dword [ebp - 0x5ec], eax
mov ecx, dword [ebp - 0x3f8]
cmp ecx, dword [ebp - 0x5ec]
jg 0x10049e85
jl 0x10049dba
mov edx, dword [ebp - 0x3fc]
cmp edx, dword [ebp - 0x5f0]
jae 0x10049e85
movsx eax, word [0x100d3128]
cdq
mov ecx, 0xc032c51d
sub ecx, eax
mov esi, 0x17620
sbb esi, edx
movsx eax, word [ebp - 0x24]
cdq
add ecx, eax
adc esi, edx
mov edx, dword [ebp - 0x4c]
sub edx, ecx
mov eax, dword [ebp - 0x48]
sbb eax, esi
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x60], eax
mov ecx, dword [0x100d3150]
sub ecx, dword [0x100d3168]
mov edx, dword [0x100d3154]
sbb edx, dword [0x100d316c]
mov eax, dword [0x100d3150]
sub eax, ecx
mov ecx, dword [0x100d3154]
sbb ecx, edx
mov dword [0x100d3150], eax
mov dword [0x100d3154], ecx
imul edx, dword [0x100d311c], 0xbb775561
mov word [ebp - 0x1c], dx
movzx eax, byte [0x100d304f]
cdq
mov ecx, 8
imul ecx, ecx, 0x6a
mov dword [ecx + 0x10337458], eax
mov dword [ecx + 0x1033745c], edx
movzx eax, byte [ebp - 0x17]
movzx edx, byte [0x100d304f]
movzx ecx, word [ebp - 0x1c]
add edx, ecx
add eax, edx
cdq
mov ecx, eax
mov esi, edx
movsx eax, byte [ebp - 0x16]
cdq
mov edi, dword [ebp - 0x64]
mov ebx, dword [ebp - 0x60]
not edi
not ebx
add eax, edi
adc edx, ebx
xor eax, dword [ebp - 0x54]
xor edx, dword [ebp - 0x50]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x7c], esi
jmp 0x10049f5c
movzx edx, word [0x100d315c]
movzx eax, byte [ebp - 0x12]
cmp edx, eax
jne 0x10049ea0
mov dword [ebp - 0x130], 1
jmp 0x10049eaa
mov dword [ebp - 0x130], 0
movsx ecx, byte [ebp - 0x13]
test ecx, ecx
jge 0x10049ebe
mov dword [ebp - 0x134], 1
jmp 0x10049ec8
mov dword [ebp - 0x134], 0
mov edx, dword [ebp - 0x130]
cmp edx, dword [ebp - 0x134]
jge 0x10049f5c
movsx eax, byte [ebp - 0x13]
sub eax, dword [0x100d3158]
movsx ecx, byte [ebp - 0x13]
add ecx, eax
mov byte [ebp - 0x13], cl
movsx eax, byte [ebp - 0x15]
add eax, 0xe1bb
cdq
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
movsx eax, word [ebp - 0x34]
sub eax, 0x396d53b4
cdq
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], edx
movzx edx, byte [0x100d3027]
test edx, edx
je 0x10049f2c
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0x404], eax
mov dword [ebp - 0x400], ecx
jmp 0x10049f40
movzx eax, byte [0x100d3027]
cdq
mov dword [ebp - 0x404], eax
mov dword [ebp - 0x400], edx
mov dx, word [ebp - 0x404]
mov word [ebp - 0x2c], dx
xor eax, eax
mov dword [0x100d31a0], 0x6924
mov dword [0x100d31a4], eax
mov ecx, dword [ebp - 0x9c]
add ecx, 0x75f
mov dword [ebp - 0x510], ecx
movzx edx, byte [ebp - 0x18]
movsx eax, byte [0x100d304e]
cmp edx, eax
jg 0x1004a162
push 0x100af6d4
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
xor ecx, ecx
mov dword [0x100d3120], eax
mov dword [0x100d3124], ecx
mov edx, dword [0x100d3120]
or edx, dword [0x100d3124]
je 0x10049fb3
mov dword [ebp - 0x138], 1
jmp 0x10049fbd
mov dword [ebp - 0x138], 0
cmp dword [0x100d3120], 0x43
jne 0x10049fcf
cmp dword [0x100d3124], 0
je 0x10049fdb
mov dword [ebp - 0x13c], 1
jmp 0x10049fe5
mov dword [ebp - 0x13c], 0
mov eax, dword [ebp - 0x138]
cmp eax, dword [ebp - 0x13c]
jle 0x1004a0d8
mov dword [ebp - 4], 0
movzx eax, byte [ebp - 0x11]
sub eax, 0x9a89
cdq
mov dword [0x100d3168], eax
mov dword [0x100d316c], edx
movsx eax, word [ebp - 0x30]
cdq
xor eax, 0x46b73053
xor edx, 0x15802
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
imul ecx, dword [0x100d311c], 0xd
mov word [ebp - 0x28], cx
movsx edx, word [0x100d3128]
sub edx, 0x7a4c6dd9
xor eax, eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], eax
jmp 0x1004a0c3
mov dword [ebp - 4], 0xffffffff
jmp 0x1004a0d3
jmp 0x1004a15d
movsx edx, word [ebp - 0x34]
not edx
test edx, edx
je 0x1004a15d
mov dword [0x100d31b4], 2
movzx eax, word [ebp - 0x1c]
add eax, 0x3daca752
mov word [ebp - 0x24], ax
mov byte [ebp - 0x11], 0xa2
mov byte [ebp - 0x15], 8
mov ecx, dword [0x100d3140]
sub ecx, dword [0x100d3170]
mov edx, dword [0x100d3140]
add edx, ecx
mov dword [0x100d3140], edx
movzx eax, word [ebp - 0x28]
test eax, eax
je 0x1004a139
movsx eax, byte [0x100d304e]
cdq
mov dword [ebp - 0x378], eax
mov dword [ebp - 0x374], edx
jmp 0x1004a14b
mov ecx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x378], ecx
mov dword [ebp - 0x374], edx
mov eax, dword [ebp - 0x378]
mov ecx, dword [ebp - 0x374]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], ecx
jmp 0x1004a23b
mov edx, dword [0x100d3188]
or edx, dword [0x100d318c]
je 0x1004a23b
mov eax, dword [0x100d314c]
push eax
mov ecx, dword [0x100d3148]
push ecx
mov edx, dword [0x100d314c]
push edx
mov eax, dword [0x100d3148]
push eax
call fcn.100a25b0
mov dword [0x100d3148], eax
mov dword [0x100d314c], edx
mov ecx, dword [0x100d3188]
add ecx, 0xaf
mov esi, dword [0x100d318c]
adc esi, 0
movzx eax, word [0x100d315c]
cdq
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov word [0x100d315c], ax
movsx eax, byte [ebp - 0x13]
cdq
mov ecx, eax
sub ecx, dword [ebp - 0x70]
movsx eax, byte [ebp - 0x13]
cdq
add eax, ecx
mov byte [ebp - 0x13], al
mov edx, dword [0x100d3160]
or edx, dword [0x100d3164]
je 0x1004a202
movzx eax, word [0x100d315c]
cdq
mov dword [ebp - 0x40c], eax
mov dword [ebp - 0x408], edx
jmp 0x1004a214
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x40c], eax
mov dword [ebp - 0x408], ecx
mov dx, word [ebp - 0x40c]
mov word [ebp - 0x1c], dx
mov eax, dword [0x100d31b4]
xor ecx, ecx
mov edx, dword [ebp - 0x5c]
mov esi, dword [ebp - 0x58]
push ecx
push eax
push esi
push edx
call fcn.100a25b0
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
mov eax, dword [0x100d3c78]
mov dword [ebp - 0xa0], eax
cmp dword [0x100d311c], 0
je 0x1004a263
mov ecx, dword [ebp - 0x80]
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x414], ecx
mov dword [ebp - 0x410], edx
jmp 0x1004a275
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x414], eax
mov dword [ebp - 0x410], ecx
mov edx, dword [ebp - 0x414]
mov dword [0x100d31b4], edx
movsx eax, byte [ebp - 0x14]
movzx ecx, byte [0x100d304f]
imul eax, ecx
cdq
mov ecx, eax
movzx eax, byte [ebp - 0x12]
cdq
mov edx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
mov dword [ebp - 0x964], esi
xor eax, edx
sub ecx, eax
mov esi, dword [ebp - 0x4c]
and esi, dword [ebp - 0x4c]
not esi
mov eax, dword [ebp - 0x68]
cdq
sub esi, eax
add ecx, esi
mov byte [ebp - 0x11], cl
mov ecx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x950], edx
sub ecx, 0xcae84906
movzx eax, byte [ebp - 0x11]
sub eax, 2
cdq
sub ecx, eax
mov dword [0x100d3158], ecx
mov eax, dword [ebp - 0xa0]
add eax, 0x571
mov dword [ebp - 0xbc], eax
mov ecx, dword [0x100d3180]
mov edx, dword [0x100d3184]
not ecx
not edx
mov dword [ebp - 0x5f8], ecx
mov dword [ebp - 0x5f4], edx
mov eax, dword [ebp - 0x5f8]
cmp eax, dword [0x100d3168]
jne 0x1004a325
mov ecx, dword [ebp - 0x5f4]
cmp ecx, dword [0x100d316c]
je 0x1004a331
mov dword [ebp - 0x140], 1
jmp 0x1004a33b
mov dword [ebp - 0x140], 0
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x600], edx
mov dword [ebp - 0x5fc], eax
mov ecx, dword [ebp - 0x600]
or ecx, dword [ebp - 0x5fc]
jne 0x1004a371
movsx edx, word [ebp - 0x2c]
not edx
test edx, edx
jne 0x1004a371
mov dword [ebp - 0x144], 0
jmp 0x1004a37b
mov dword [ebp - 0x144], 1
mov eax, dword [ebp - 0x140]
cmp eax, dword [ebp - 0x144]
jle 0x1004a395
mov dword [ebp - 0x14c], 1
jmp 0x1004a39f
mov dword [ebp - 0x14c], 0
movsx ecx, byte [ebp - 0x14]
test ecx, ecx
je 0x1004a3c9
mov edx, dword [0x100d3150]
or edx, dword [0x100d3154]
je 0x1004a3c9
movsx eax, word [ebp - 0x34]
test eax, eax
je 0x1004a3c9
mov dword [ebp - 0x148], 1
jmp 0x1004a3d3
mov dword [ebp - 0x148], 0
mov ecx, dword [ebp - 0x148]
not ecx
cmp dword [ebp - 0x14c], ecx
je 0x1004a525
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x74]
mov ecx, dword [0x100d3184]
sub edx, dword [0x100d3180]
sbb eax, ecx
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x74], eax
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x608], edx
mov dword [ebp - 0x604], eax
mov ecx, dword [ebp - 0x608]
or ecx, dword [ebp - 0x604]
jne 0x1004a435
xor edx, edx
mov dword [ebp - 0x618], 1
mov dword [ebp - 0x614], edx
jmp 0x1004a440
xorps xmm0, xmm0
movlpd qword [ebp - 0x618], xmm0
movzx eax, byte [ebp - 0x11]
cdq
push edx
push eax
mov eax, dword [0x100d318c]
push eax
mov ecx, dword [0x100d3188]
push ecx
call fcn.100a25b0
mov dword [ebp - 0x610], eax
mov dword [ebp - 0x60c], edx
mov edx, dword [ebp - 0x610]
or edx, dword [ebp - 0x60c]
jne 0x1004a47f
mov dword [ebp - 0x150], 1
jmp 0x1004a489
mov dword [ebp - 0x150], 0
movzx eax, byte [ebp - 0x12]
movsx ecx, byte [ebp - 0x16]
imul eax, ecx
cdq
mov ecx, eax
mov edx, dword [0x100d3198]
mov eax, dword [0x100d319c]
mov dword [ebp - 0x954], eax
sub edx, dword [ebp - 0x618]
xor ecx, edx
mov eax, dword [ebp - 0x150]
xor eax, 0x52
cdq
add ecx, eax
mov dword [0x100d311c], ecx
movsx ecx, byte [ebp - 0x13]
sub ecx, 0xbe
movsx edx, byte [0x100d304e]
imul edx, ecx
mov byte [0x100d304e], dl
mov al, byte [0x100d3138]
mov byte [ebp - 0x13], al
mov ecx, dword [0x100d3144]
and ecx, 0x510f
mov byte [ebp - 0x12], cl
movzx eax, byte [ebp - 0x12]
cdq
mov ecx, dword [ebp - 0x5c]
mov esi, dword [ebp - 0x58]
not ecx
not esi
sub eax, ecx
sbb edx, esi
not eax
not edx
movsx ecx, word [ebp - 0x2c]
add ecx, dword [0x100d3170]
xor esi, esi
xor eax, ecx
xor edx, esi
mov dword [0x100d3160], eax
mov dword [0x100d3164], edx
mov edx, dword [ebp - 0xa0]
add edx, 0x4b1
mov dword [ebp - 0x514], edx
push 0xffffffffffffff9e
push 0
push 0
push 0xfffffffffffffff3
call fcn.10058a50
add esp, 0x10
movsx eax, al
cdq
mov dword [0x100d3198], eax
mov dword [0x100d319c], edx
cmp dword [0x100d3158], 0
je 0x1004a573
mov eax, dword [ebp - 0x80]
or eax, dword [ebp - 0x7c]
je 0x1004a573
movsx ecx, word [ebp - 0x24]
test ecx, ecx
je 0x1004a692
xorps xmm0, xmm0
movlpd qword [ebp - 0x5c], xmm0
mov edx, dword [0x100d3138]
sub edx, 0x6cda
mov eax, dword [0x100d313c]
sbb eax, 0
mov ecx, dword [0x100d3168]
sub ecx, edx
mov edx, dword [0x100d316c]
sbb edx, eax
mov dword [0x100d3168], ecx
mov dword [0x100d316c], edx
mov eax, dword [0x100d31b4]
xor ecx, ecx
add eax, dword [ebp - 0x70]
adc ecx, dword [ebp - 0x6c]
mov edx, dword [0x100d31b4]
xor esi, esi
push ecx
push eax
push esi
push edx
call fcn.100a25b0
mov dword [0x100d31b4], eax
mov eax, dword [0x100d3134]
xor eax, 0x3880
cdq
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
movzx eax, byte [ebp - 0x11]
sub eax, 0x5b644259
cdq
mov ecx, dword [0x100d3160]
sub ecx, eax
mov eax, dword [0x100d3164]
sbb eax, edx
mov dword [0x100d3160], ecx
mov dword [0x100d3164], eax
mov ecx, dword [0x100d3188]
add ecx, 0xc8f364f7
mov byte [ebp - 0x18], cl
mov edx, dword [0x100d3190]
not edx
movsx eax, byte [ebp - 0x14]
imul edx, eax
mov word [0x100d31b0], dx
mov ecx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x620], ecx
mov dword [ebp - 0x61c], edx
mov eax, dword [ebp - 0x620]
or eax, dword [ebp - 0x61c]
je 0x1004a64a
jmp 0x1004a68d
mov byte [0x100d304e], 0xdb
mov byte [ebp - 0x14], 1
movzx ecx, byte [ebp - 0x17]
movsx edx, word [ebp - 0x2c]
imul ecx, edx
mov byte [ebp - 0x17], cl
movsx eax, word [ebp - 0x24]
not eax
cdq
add eax, dword [ebp - 0x4c]
mov word [ebp - 0x30], ax
mov eax, dword [0x100d3180]
mov ecx, dword [0x100d3184]
mov dword [ebp - 0x958], ecx
sub eax, 0xec
mov word [0x100d31b0], ax
jmp 0x1004a775
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x628], edx
mov dword [ebp - 0x624], eax
cmp dword [ebp - 0x624], 0x2d993
jg 0x1004a6ca
jl 0x1004a6be
cmp dword [ebp - 0x628], 0x3ac12f37
ja 0x1004a6ca
mov dword [ebp - 0x154], 1
jmp 0x1004a6d4
mov dword [ebp - 0x154], 0
movzx ecx, word [0x100d3178]
cmp ecx, dword [ebp - 0x154]
je 0x1004a775
movzx eax, byte [0x100d3027]
add eax, 0xf6
cdq
mov dword [0x100d3168], eax
mov dword [0x100d316c], edx
movsx edx, word [ebp - 0x24]
sub edx, dword [0x100d3170]
movsx eax, word [ebp - 0x24]
sub eax, edx
mov word [ebp - 0x24], ax
push 0x55b24
push 0x2bfdd34c
mov ecx, dword [0x100d3164]
push ecx
mov edx, dword [0x100d3160]
push edx
call fcn.100a25b0
mov word [ebp - 0x28], ax
movsx eax, word [ebp - 0x34]
cdq
mov ecx, dword [0x100d31a0]
mov esi, dword [0x100d31a4]
add ecx, eax
adc esi, edx
mov dword [0x100d3198], ecx
mov dword [0x100d319c], esi
mov eax, dword [ebp - 0x68]
cdq
push 0x7f163
push 0xf4adf91b
push edx
push eax
call fcn.100a25b0
mov dword [0x100d31a0], eax
mov dword [0x100d31a4], edx
mov edx, dword [ebp - 0xa0]
add edx, 0x7fa
mov dword [ebp - 0x518], edx
movzx eax, word [ebp - 0x1c]
cmp eax, dword [0x100d3134]
jne 0x1004a79f
mov dword [ebp - 0x158], 1
jmp 0x1004a7a9
mov dword [ebp - 0x158], 0
movzx ecx, word [ebp - 0x1c]
cmp ecx, 0x46
jne 0x1004a7be
mov dword [ebp - 0x15c], 1
jmp 0x1004a7c8
mov dword [ebp - 0x15c], 0
mov edx, dword [ebp - 0x158]
cmp edx, dword [ebp - 0x15c]
je 0x1004a87e
mov eax, dword [0x100d3174]
xor ecx, ecx
add eax, dword [ebp - 0x70]
adc ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x630], eax
mov dword [ebp - 0x62c], ecx
mov edx, dword [ebp - 0x630]
or edx, dword [ebp - 0x62c]
jne 0x1004a80d
mov dword [ebp - 0x160], 1
jmp 0x1004a817
mov dword [ebp - 0x160], 0
movzx eax, byte [0x100d304f]
xor eax, 0x94
xor eax, dword [ebp - 0x160]
cdq
mov dword [0x100d3168], eax
mov dword [0x100d316c], edx
movsx eax, word [ebp - 0x2c]
sub eax, 0x334e
cdq
mov ecx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x40]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], esi
movsx eax, byte [0x100d3026]
cdq
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], edx
mov edx, dword [0x100d311c]
add edx, 1
mov dword [0x100d311c], edx
movsx eax, word [ebp - 0x34]
imul ecx, eax, 0xbc
mov byte [ebp - 0x13], cl
jmp 0x1004aa35
mov edx, dword [0x100d3168]
or edx, dword [0x100d316c]
jne 0x1004a958
mov eax, dword [0x100d3138]
or eax, dword [0x100d313c]
jne 0x1004a958
mov ecx, dword [0x100d31a8]
mov edx, dword [0x100d31ac]
mov eax, dword [ebp - 0x5c]
mov esi, dword [ebp - 0x58]
mov dword [ebp - 0x638], ecx
mov dword [ebp - 0x634], edx
mov dword [ebp - 0x640], eax
mov dword [ebp - 0x63c], esi
mov ecx, dword [ebp - 0x638]
cmp ecx, dword [ebp - 0x640]
jne 0x1004a958
mov edx, dword [ebp - 0x634]
cmp edx, dword [ebp - 0x63c]
jne 0x1004a958
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x48]
mov dword [0x100d3148], eax
mov dword [0x100d314c], ecx
movsx edx, word [ebp - 0x24]
sub edx, 0x266167a8
mov dword [0x100d3170], edx
mov eax, dword [0x100d3c78]
mov dword [0x100d311c], eax
movzx ecx, word [ebp - 0x28]
sub ecx, 0xae85
mov byte [ebp - 0x16], cl
movsx eax, byte [ebp - 0x15]
cdq
mov ecx, dword [ebp - 0x64]
mov esi, dword [ebp - 0x60]
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov ecx, eax
movsx eax, byte [ebp - 0x15]
cdq
sub eax, ecx
mov byte [ebp - 0x15], al
movsx edx, word [0x100d3130]
movsx eax, byte [ebp - 0x14]
and edx, eax
mov word [0x100d3130], dx
jmp 0x1004aa35
mov ecx, 0x97531272
or ecx, 0x8f8b0
je 0x1004aa35
mov edx, 4
imul eax, edx, 0x22
mov eax, dword [eax + 0x103372c0]
cdq
push edx
push eax
mov ecx, dword [0x100d318c]
push ecx
mov edx, dword [0x100d3188]
push edx
call fcn.100a25b0
mov dword [0x100d3188], eax
mov dword [0x100d318c], edx
movzx eax, word [ebp - 0x1c]
cdq
mov ecx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x74], esi
mov edx, dword [0x100d3180]
mov eax, dword [0x100d3184]
push 0x42f7a
push 0xeb870374
push eax
push edx
call fcn.100a25b0
mov byte [ebp - 0x12], al
push 0x85e87
push 0xd4291246
mov ecx, dword [ebp - 0x6c]
push ecx
mov edx, dword [ebp - 0x70]
push edx
call fcn.100a25b0
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
movsx eax, byte [0x100d304e]
movzx ecx, byte [0x100d3063]
add eax, ecx
jne 0x1004aa07
mov dword [ebp - 0x164], 1
jmp 0x1004aa11
mov dword [ebp - 0x164], 0
movzx edx, byte [0x100d3027]
add edx, dword [0x100d3158]
mov eax, dword [ebp - 0x164]
sub eax, edx
not eax
xor ecx, ecx
mov dword [0x100d3138], eax
mov dword [0x100d313c], ecx
mov edx, dword [0x100d3c78]
mov dword [ebp - 0xa8], edx
mov dword [ebp - 0xa4], 0x10f
jmp 0x1004aa5c
mov eax, dword [ebp - 0xa4]
sub eax, 1
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xa4], 0
jle 0x1004ada2
mov ecx, 3
mov word [0x100d3128], cx
cmp dword [0x100d3158], 0
jne 0x1004aa8a
mov dword [ebp - 0x168], 1
jmp 0x1004aa94
mov dword [ebp - 0x168], 0
movzx edx, word [ebp - 0x20]
and edx, dword [ebp - 0x168]
movsx eax, word [0x100d31b0]
add eax, dword [0x100d3174]
not eax
sub edx, eax
mov dword [0x100d311c], edx
mov ecx, dword [0x100d3168]
sub ecx, 0xcc
movsx eax, word [ebp - 0x24]
cdq
add eax, ecx
mov word [ebp - 0x24], ax
movzx edx, byte [ebp - 0x11]
add edx, 0x163381e
mov dword [0x100d311c], edx
mov al, byte [0x100d31b0]
mov byte [0x100d3063], al
movsx eax, word [ebp - 0x30]
cdq
push edx
push eax
mov ecx, dword [0x100d3164]
push ecx
mov edx, dword [0x100d3160]
push edx
call fcn.100a25b0
mov dword [0x100d3160], eax
mov dword [0x100d3164], edx
movsx eax, word [0x100d3128]
mov dword [ebp - 0x16c], eax
cmp dword [ebp - 0x16c], 3
ja case.default.0x1004ab2b
mov ecx, dword [ebp - 0x16c]
jmp dword [ecx*4 + 0x10051d68]
or edx, 0xffffffff
mov dword [ebp - 0x54], 0xffff698f
mov dword [ebp - 0x50], edx
mov eax, dword [0x100d3190]
not eax
cdq
mov ecx, eax
movsx eax, word [ebp - 0x2c]
not eax
cdq
add eax, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x4c]
add edx, 0x3e
sub eax, edx
add ecx, eax
not ecx
mov word [ebp - 0x2c], cx
movsx eax, byte [ebp - 0x16]
sub eax, 0xcd
movsx ecx, word [ebp - 0x30]
or ecx, eax
mov word [ebp - 0x30], cx
push 0
push 0xc5
mov edx, dword [ebp - 0x48]
push edx
mov eax, dword [ebp - 0x4c]
push eax
call fcn.100a25b0
mov esi, eax
mov edi, edx
movsx eax, byte [ebp - 0x13]
cdq
mov ecx, dword [0x100d31a8]
mov ebx, dword [0x100d31ac]
push ebx
push ecx
push edx
push eax
call fcn.100a25b0
add esi, eax
adc edi, edx
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x38]
mov ecx, dword [0x100d3164]
push ecx
mov ecx, dword [0x100d3160]
push ecx
push eax
push edx
call fcn.100a25b0
add eax, dword [0x100d3150]
adc edx, dword [0x100d3154]
sub esi, eax
sbb edi, edx
mov dword [ebp - 0x78], esi
mov dword [ebp - 0x74], edi
movzx edx, word [ebp - 0x1c]
test edx, edx
je 0x1004abf9
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x41c], eax
mov dword [ebp - 0x418], ecx
jmp 0x1004ac0d
movsx eax, byte [0x100d3026]
cdq
mov dword [ebp - 0x41c], eax
mov dword [ebp - 0x418], edx
mov dl, byte [ebp - 0x41c]
mov byte [ebp - 0x18], dl
mov ax, word [0x100d3174]
mov word [ebp - 0x2c], ax
jmp case.default.0x1004ab2b
movsx eax, byte [0x100d3026]
cdq
sub eax, 0x2e8741f5
sbb edx, 0x38340
mov dword [0x100d3150], eax
mov dword [0x100d3154], edx
mov ecx, dword [0x100d3148]
add ecx, 0x1e
mov edx, dword [0x100d314c]
adc edx, 0
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], edx
mov dword [0x100d311c], 0x83d602e6
mov eax, dword [0x100d3c78]
xor ecx, ecx
mov dword [0x100d3120], eax
mov dword [0x100d3124], ecx
movsx edx, byte [ebp - 0x16]
sub edx, 0x288e964
mov dword [0x100d3134], edx
jmp case.default.0x1004ab2b
movsx eax, byte [ebp - 0x14]
imul eax, dword [0x100d3144]
not eax
xor ecx, ecx
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], ecx
cmp dword [ebp - 0x68], 0
je 0x1004acb3
movzx edx, word [ebp - 0x1c]
mov dword [ebp - 0x170], edx
jmp 0x1004acbd
movsx eax, byte [ebp - 0x14]
mov dword [ebp - 0x170], eax
mov ecx, dword [ebp - 0x170]
mov dword [0x100d3140], ecx
movsx edx, word [0x100d3128]
imul eax, edx, 0xe7
mov dword [0x100d3140], eax
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
push 0
push 0x29
push edx
push ecx
call fcn.100a25b0
mov dword [0x100d3168], eax
mov dword [0x100d316c], edx
jmp case.default.0x1004ab2b
movzx eax, word [ebp - 0x20]
cdq
mov ecx, dword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
mov dword [ebp - 0x95c], edx
sub eax, ecx
mov word [ebp - 0x20], ax
mov al, byte [0x100d3063]
mov byte [0x100d3063], al
mov ecx, dword [0x100d3134]
sar ecx, 5
mov byte [ebp - 0x13], cl
mov edx, dword [0x100d31a0]
mov eax, dword [0x100d31a4]
mov dword [ebp - 0x648], edx
mov dword [ebp - 0x644], eax
mov ecx, dword [ebp - 0x648]
or ecx, dword [ebp - 0x644]
je 0x1004ad5c
mov edx, dword [0x100d3158]
mov dword [ebp - 0x174], edx
jmp 0x1004ad67
mov eax, dword [0x100d31b4]
mov dword [ebp - 0x174], eax
mov ecx, dword [ebp - 0x174]
xor edx, edx
mov dword [0x100d3188], ecx
mov dword [0x100d318c], edx
movsx eax, byte [0x100d3026]
cdq
add eax, dword [ebp - 0x4c]
mov byte [0x100d3026], al
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x38]
add eax, 1
adc ecx, 0
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], ecx
jmp 0x1004aa4d
mov edx, dword [ebp - 0xa8]
add edx, 0x4e7
mov dword [ebp - 0x25c], edx
movsx eax, byte [ebp - 0x16]
xor eax, 0x98
mov byte [0x100d304f], al
mov ecx, dword [0x100d3164]
push ecx
mov edx, dword [0x100d3160]
push edx
mov eax, dword [0x100d3154]
push eax
mov ecx, dword [0x100d3150]
push ecx
call fcn.100a25b0
mov dword [ebp - 0x650], eax
mov dword [ebp - 0x64c], edx
mov edx, dword [ebp - 0x650]
or edx, dword [ebp - 0x64c]
jne 0x1004ae08
mov dword [ebp - 0x178], 1
jmp 0x1004ae12
mov dword [ebp - 0x178], 0
mov eax, dword [ebp - 0x178]
cdq
mov dword [0x100d3168], eax
mov dword [0x100d316c], edx
movsx eax, word [0x100d3128]
imul ecx, eax, 0xa2
mov dword [0x100d311c], ecx
movsx eax, byte [ebp - 0x14]
cdq
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x38]
add ecx, eax
adc esi, edx
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x38]
sub edx, ecx
sbb eax, esi
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x38], eax
movsx ecx, word [ebp - 0x24]
movsx edx, word [ebp - 0x30]
imul ecx, edx
mov word [ebp - 0x24], cx
mov eax, dword [ebp - 0xa8]
add eax, 0x726
mov dword [ebp - 0x51c], eax
movsx ecx, word [ebp - 0x24]
test ecx, ecx
je 0x1004ae8a
movzx edx, byte [ebp - 0x17]
mov dword [ebp - 0x17c], edx
jmp 0x1004ae94
movzx eax, word [ebp - 0x1c]
mov dword [ebp - 0x17c], eax
mov eax, dword [ebp - 0x17c]
cdq
mov dword [0x100d3148], eax
mov dword [0x100d314c], edx
movsx ecx, word [0x100d3130]
sub ecx, 0xa8
movsx edx, word [ebp - 0x24]
sub edx, ecx
mov word [ebp - 0x24], dx
mov eax, dword [0x100d3174]
sub eax, 0xaf65
xor ecx, ecx
mov edx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
and edx, eax
and esi, ecx
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], esi
movzx eax, byte [0x100d3063]
sub eax, 0x595305d8
mov word [0x100d3178], ax
mov ecx, 0xdf
mov word [ebp - 0x30], cx
movsx edx, word [ebp - 0x2c]
movzx eax, word [ebp - 0x20]
add edx, eax
mov word [ebp - 0x1c], dx
mov ecx, dword [ebp - 0xa8]
add ecx, 0x70e
mov dword [ebp - 0x960], ecx
movsx edx, byte [0x100d304e]
cmp dword [0x100d3144], edx
jae 0x1004af2f
mov dword [ebp - 0x180], 1
jmp 0x1004af39
mov dword [ebp - 0x180], 0
cmp dword [0x100d3144], 7
jae 0x1004af4e
mov dword [ebp - 0x184], 1
jmp 0x1004af58
mov dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x180]
cmp eax, dword [ebp - 0x184]
jle 0x1004afe5
mov ecx, dword [0x100d3160]
sub ecx, 0xdffe
mov edx, dword [0x100d3164]
sbb edx, 0
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], edx
imul eax, dword [0x100d31b4], 0x40cd
mov word [ebp - 0x2c], ax
mov ecx, dword [0x100d31a8]
mov edx, dword [0x100d31ac]
mov dword [ebp - 0x968], edx
sub ecx, 0xa7
movzx eax, byte [ebp - 0x18]
cdq
sub eax, ecx
mov byte [ebp - 0x18], al
mov al, byte [ebp - 0x11]
sub al, 1
mov byte [ebp - 0x11], al
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x40]
mov cl, 5
call fcn.100a2610
mov word [0x100d312c], ax
mov ecx, dword [0x100d3c78]
xor edx, edx
mov dword [0x100d3168], ecx
mov dword [0x100d316c], edx
jmp 0x1004b090
movzx eax, byte [ebp - 0x18]
test eax, eax
jne 0x1004b090
movsx ecx, byte [0x100d304e]
imul eax, ecx, 0xb5
movzx edx, byte [ebp - 0x18]
sub eax, edx
not eax
movzx ecx, word [ebp - 0x28]
movzx edx, word [0x100d315c]
add ecx, edx
sub eax, ecx
cdq
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x6c]
mov cl, 4
call fcn.100a2610
mov byte [0x100d3063], al
movzx eax, word [0x100d315c]
test eax, eax
jne 0x1004b045
mov dword [ebp - 0x188], 1
jmp 0x1004b04f
mov dword [ebp - 0x188], 0
mov ecx, dword [0x100d3170]
xor ecx, 0x8db8bcd1
movzx edx, word [ebp - 0x28]
mov eax, dword [0x100d3144]
sub eax, edx
imul ecx, eax
movzx eax, byte [0x100d3063]
or eax, dword [ebp - 0x188]
cdq
add eax, 0x4da5f28c
sub ecx, eax
mov word [ebp - 0x2c], cx
movsx ecx, word [ebp - 0x2c]
movzx edx, byte [ebp - 0x12]
and ecx, edx
mov word [ebp - 0x2c], cx
mov eax, dword [0x100d3c78]
mov dword [ebp - 0xac], eax
movsx ecx, byte [ebp - 0x14]
movzx edx, byte [ebp - 0x12]
cmp ecx, edx
jg 0x1004b0f4
mov eax, dword [0x100d311c]
add eax, 0xc6
mov word [0x100d3178], ax
mov byte [ebp - 0x14], 0x1c
movzx ecx, byte [ebp - 0x11]
mov dword [ebp - 0x68], ecx
movzx edx, word [ebp - 0x1c]
imul eax, edx, 0x7aab
mov word [0x100d315c], ax
movsx ecx, word [0x100d31b0]
movsx edx, byte [0x100d304e]
sub ecx, edx
movsx eax, word [0x100d31b0]
imul eax, ecx
mov word [0x100d31b0], ax
jmp 0x1004b167
movsx ecx, word [0x100d3128]
test ecx, ecx
je 0x1004b167
movzx edx, word [ebp - 0x20]
mov eax, 4
imul ecx, eax, 0x499d
mov dword [ecx + 0x10129e80], edx
mov edx, 1
imul eax, edx, 0xf
movsx eax, byte [eax + 0x103396e4]
cdq
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x38]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x38], esi
movsx edx, word [0x100d3128]
add edx, 0x3a
mov byte [ebp - 0x11], dl
movsx eax, byte [ebp - 0x15]
cdq
mov ecx, dword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
mov dword [ebp - 0x96c], edx
add eax, ecx
mov byte [ebp - 0x15], al
mov byte [ebp - 0x17], 0xbb
movsx eax, word [ebp - 0x30]
add eax, 0x13be5c55
mov byte [ebp - 0x16], al
mov ecx, dword [ebp - 0xac]
add ecx, 0x7cf
mov dword [ebp - 0xc4], ecx
jmp 0x1004b196
jmp 0x1004b1c2
jmp 0x1004b1cb
jmp 0x1004b201
jmp 0x1004b214
mov edx, dword [ebp - 0xac]
add edx, 0x819
mov dword [ebp - 0xc8], edx
movsx eax, byte [ebp - 0x14]
cdq
mov ecx, dword [0x100d318c]
push ecx
mov ecx, dword [0x100d3188]
push ecx
push edx
push eax
call fcn.100a25b0
mov byte [ebp - 0x14], al
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x970], eax
add edx, dword [ebp - 0x4c]
mov word [ebp - 0x30], dx
movsx ecx, byte [ebp - 0x14]
sub ecx, dword [0x100d3134]
mov byte [ebp - 0x14], cl
mov dx, word [ebp - 0x34]
sub dx, 1
mov word [ebp - 0x34], dx
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
push ecx
push eax
mov edx, dword [0x100d3154]
push edx
mov eax, dword [0x100d3150]
push eax
call fcn.100a25b0
mov dword [0x100d3150], eax
mov dword [0x100d3154], edx
movzx ecx, byte [0x100d3063]
movsx edx, word [ebp - 0x24]
lea eax, [edx + ecx + 0xc2]
mov word [ebp - 0x24], ax
mov ecx, dword [ebp - 0xac]
add ecx, 0x781
mov dword [ebp - 0x974], ecx
mov edx, dword [0x100d311c]
push edx
push 0
movsx ax, byte [ebp - 0x16]
movzx ecx, ax
push ecx
push 0
call fcn.1005a510
add esp, 0x10
mov byte [ebp - 0x11], al
movzx edx, byte [ebp - 0x11]
test edx, edx
je 0x1004b2f6
jmp 0x1004b2f4
jmp 0x1004b363
mov eax, dword [0x100d3198]
mov ecx, dword [0x100d319c]
sub eax, 0x10
sbb ecx, 0
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x978], eax
mov byte [0x100d304e], dl
mov ecx, dword [0x100d3138]
sub ecx, 0x3f841538
mov edx, dword [0x100d313c]
sbb edx, 0
add ecx, dword [0x100d3160]
adc edx, dword [0x100d3164]
mov dword [0x100d3160], ecx
mov dword [0x100d3164], edx
mov eax, 1
imul ecx, eax, 0x7b1f
mov dl, byte [ecx + 0x101221e0]
mov byte [0x100d304e], dl
mov eax, dword [0x100d3c78]
mov dword [ebp - 0xb0], eax
push 0
push 0
movzx ecx, word [0x100d315c]
push ecx
push 0xc
call fcn.1005a510
add esp, 0x10
mov byte [ebp - 0x12], al
movzx edx, byte [ebp - 0x12]
test edx, edx
jg 0x1004b39b
mov dword [ebp - 0x18c], 1
jmp 0x1004b3a5
mov dword [ebp - 0x18c], 0
movzx eax, byte [ebp - 0x12]
cmp eax, 0x48
jg 0x1004b3ba
mov dword [ebp - 0x190], 1
jmp 0x1004b3c4
mov dword [ebp - 0x190], 0
mov ecx, dword [ebp - 0x18c]
cmp ecx, dword [ebp - 0x190]
jge 0x1004b6a7
push 0xbc
push 0x5b
call fcn.1005b280
add esp, 8
mov word [ebp - 0x1c], ax
movzx edx, word [0x100d3178]
movzx eax, byte [ebp - 0x18]
cmp edx, eax
jg 0x1004b404
mov dword [ebp - 0x194], 1
jmp 0x1004b40e
mov dword [ebp - 0x194], 0
mov ecx, dword [0x100d3134]
cmp ecx, dword [ebp - 0x194]
jne 0x1004b428
mov dword [ebp - 0x198], 1
jmp 0x1004b432
mov dword [ebp - 0x198], 0
movzx eax, byte [0x100d3063]
not eax
cdq
add eax, 0x1a9b07e8
adc edx, 0xdc4b5
mov dword [ebp - 0x658], eax
mov dword [ebp - 0x654], edx
mov edx, dword [ebp - 0x658]
or edx, dword [ebp - 0x654]
je 0x1004b4af
mov ecx, dword [ebp - 0x64]
mov esi, dword [ebp - 0x60]
movsx eax, word [0x100d3128]
cdq
mov dword [ebp - 0x660], ecx
mov dword [ebp - 0x65c], esi
mov dword [ebp - 0x668], eax
mov dword [ebp - 0x664], edx
mov edx, dword [ebp - 0x660]
cmp edx, dword [ebp - 0x668]
jne 0x1004b4a3
mov eax, dword [ebp - 0x65c]
cmp eax, dword [ebp - 0x664]
je 0x1004b4af
mov dword [ebp - 0x19c], 1
jmp 0x1004b4b9
mov dword [ebp - 0x19c], 0
mov ecx, dword [ebp - 0x198]
add ecx, dword [ebp - 0x19c]
jne 0x1004b5e3
mov edx, dword [0x100d31a8]
mov eax, dword [0x100d31ac]
mov dword [ebp - 0x670], edx
mov dword [ebp - 0x66c], eax
mov ecx, dword [ebp - 0x670]
or ecx, dword [ebp - 0x66c]
jne 0x1004b4fc
mov dword [ebp - 0x1a4], 1
jmp 0x1004b506
mov dword [ebp - 0x1a4], 0
movzx edx, byte [ebp - 0x11]
test edx, edx
jne 0x1004b51a
mov dword [ebp - 0x1a0], 1
jmp 0x1004b524
mov dword [ebp - 0x1a0], 0
mov eax, dword [ebp - 0x1a0]
sub eax, 0x439e
jne 0x1004b53d
mov dword [ebp - 0x1a8], 1
jmp 0x1004b547
mov dword [ebp - 0x1a8], 0
movzx ecx, byte [0x100d3027]
movzx edx, word [ebp - 0x1c]
add edx, dword [ebp - 0x1a4]
not edx
add ecx, edx
mov eax, dword [0x100d3158]
not eax
sub eax, dword [ebp - 0x1a8]
not eax
xor ecx, eax
xor edx, edx
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x48], edx
mov eax, dword [0x100d3144]
add eax, 0xf2
mov word [ebp - 0x20], ax
mov ecx, dword [ebp - 0x70]
sub ecx, 0x81dde0db
mov word [ebp - 0x2c], cx
mov edx, dword [0x100d31a0]
mov eax, dword [0x100d31a4]
sub edx, 0x53
sbb eax, 0
mov ecx, dword [ebp - 0x4c]
sub ecx, edx
mov edx, dword [ebp - 0x48]
sbb edx, eax
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x48], edx
mov eax, dword [0x100d3150]
mov ecx, dword [0x100d3154]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], ecx
imul edx, dword [0x100d3170], 0x972d
xor eax, eax
mov ecx, dword [ebp - 0x5c]
mov esi, dword [ebp - 0x58]
or ecx, edx
or esi, eax
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x58], esi
jmp 0x1004b6a2
movsx eax, word [ebp - 0x24]
cdq
push 0x5f70f
push 0x57a8073f
push edx
push eax
call fcn.100a25b0
mov ecx, eax
movsx eax, word [0x100d3130]
cdq
add eax, ecx
mov word [0x100d3130], ax
mov edx, dword [0x100d3c78]
xor eax, eax
mov dword [0x100d3120], edx
mov dword [0x100d3124], eax
mov eax, dword [0x100d311c]
cdq
push 0x3c194
push 0x64195b42
push edx
push eax
call fcn.100a25b0
mov word [0x100d312c], ax
movsx eax, word [0x100d3130]
movzx ecx, byte [0x100d3063]
xor eax, ecx
cdq
mov edx, dword [0x100d31a8]
mov ecx, dword [0x100d31ac]
mov dword [ebp - 0x97c], ecx
add edx, dword [0x100d3160]
not edx
and eax, edx
mov word [ebp - 0x28], ax
movzx eax, word [ebp - 0x1c]
cdq
mov ecx, dword [0x100d31a8]
mov esi, dword [0x100d31ac]
sub ecx, eax
sbb esi, edx
mov dword [0x100d31a8], ecx
mov dword [0x100d31ac], esi
movzx eax, word [ebp - 0x28]
add eax, 0xfa1
cdq
mov dword [0x100d31a0], eax
mov dword [0x100d31a4], edx
jmp 0x1004b755
movsx edx, byte [ebp - 0x15]
sar edx, 2
mov dword [ebp - 0x68], edx
mov ax, word [ebp - 0x20]
mov word [ebp - 0x24], ax
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x40]
sub ecx, 1
sbb edx, 0
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov cl, 4
call fcn.100a25f0
mov dword [0x100d3170], eax
movsx eax, word [ebp - 0x24]
cdq
xor eax, dword [ebp - 0x78]
xor edx, dword [ebp - 0x74]
mov dword [ebp - 0x678], eax
mov dword [ebp - 0x674], edx
mov eax, dword [ebp - 0x678]
or eax, dword [ebp - 0x674]
jne 0x1004b710
mov ecx, 1
mov word [ebp - 0x8e], cx
jmp 0x1004b719
xor edx, edx
mov word [ebp - 0x8e], dx
mov ax, word [ebp - 0x8e]
mov word [ebp - 0x34], ax
mov ecx, 0xa7
sub ecx, dword [0x100d3120]
mov edx, 0
sbb edx, dword [0x100d3124]
movsx eax, word [ebp - 0x30]
and eax, dword [0x100d3170]
xor esi, esi
push esi
push eax
push edx
push ecx
call fcn.100a25b0
mov word [0x100d315c], ax
mov ecx, dword [ebp - 0xb0]
add ecx, 0x67c
mov dword [ebp - 0x2fc], ecx
push 0
push 0
call fcn.100597c0
add esp, 8
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x680], edx
mov dword [ebp - 0x67c], eax
cmp dword [ebp - 0x67c], 0
jl 0x1004b7ab
jg 0x1004b79f
cmp dword [ebp - 0x680], 0
jbe 0x1004b7ab
mov dword [ebp - 0x1ac], 1
jmp 0x1004b7b5
mov dword [ebp - 0x1ac], 0
mov ecx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x688], ecx
mov dword [ebp - 0x684], edx
cmp dword [ebp - 0x684], 0
jl 0x1004b7e7
jg 0x1004b7db
cmp dword [ebp - 0x688], 0x47
jbe 0x1004b7e7
mov dword [ebp - 0x1b0], 1
jmp 0x1004b7f1
mov dword [ebp - 0x1b0], 0
mov eax, dword [ebp - 0x1ac]
cmp eax, dword [ebp - 0x1b0]
jne 0x1004ba0c
xor ecx, ecx
mov dword [ebp - 0x70], 2
mov dword [ebp - 0x6c], ecx
movsx eax, word [0x100d3128]
cdq
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
movzx edx, word [0x100d3178]
movsx eax, word [0x100d3128]
not eax
sub edx, eax
sub edx, dword [0x100d3144]
mov word [ebp - 0x1c], dx
mov ecx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x980], edx
sub ecx, 0x3c789f9a
mov dword [0x100d3170], ecx
movzx eax, byte [0x100d304f]
add eax, 0x4adce57c
xor ecx, ecx
mov edx, dword [0x100d31a0]
mov esi, dword [0x100d31a4]
sub edx, eax
sbb esi, ecx
mov dword [0x100d31a0], edx
mov dword [0x100d31a4], esi
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x6c]
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xd4], ecx
mov edx, dword [ebp - 0xd8]
or edx, dword [ebp - 0xd4]
je 0x1004b8c8
cmp dword [ebp - 0xd8], 1
jne 0x1004b8ad
cmp dword [ebp - 0xd4], 0
je 0x1004b920
cmp dword [ebp - 0xd8], 2
jne 0x1004b8c3
cmp dword [ebp - 0xd4], 0
je 0x1004b9b8
jmp 0x1004ba07
mov eax, 0xef
mov word [ebp - 0x24], ax
movsx eax, word [ebp - 0x34]
sar eax, 5
cdq
mov dword [0x100d3148], eax
mov dword [0x100d314c], edx
movsx ecx, byte [0x100d3026]
movsx edx, byte [ebp - 0x13]
imul ecx, edx
movsx eax, byte [0x100d3026]
sub eax, ecx
mov byte [0x100d3026], al
movzx eax, byte [ebp - 0x18]
add eax, 0x3fc6bdb1
cdq
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
movzx eax, byte [ebp - 0x18]
cdq
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
jmp 0x1004ba07
mov eax, dword [0x100d3134]
cdq
mov ecx, dword [ebp - 0x48]
push ecx
mov ecx, dword [ebp - 0x4c]
push ecx
push edx
push eax
call fcn.100a25b0
mov dword [0x100d3140], eax
movzx edx, byte [0x100d304f]
movzx eax, word [ebp - 0x28]
add edx, eax
jne 0x1004b955
mov dword [ebp - 0x1b4], 1
jmp 0x1004b95f
mov dword [ebp - 0x1b4], 0
movzx ecx, byte [ebp - 0x11]
add ecx, dword [ebp - 0x1b4]
mov dword [0x100d3190], ecx
movsx eax, word [ebp - 0x2c]
shl eax, 4
cdq
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
push 0x42ce2
push 0x75e8ab87
mov edx, dword [ebp - 0x7c]
push edx
mov eax, dword [ebp - 0x80]
push eax
call fcn.100a25b0
mov word [ebp - 0x28], ax
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x40]
sub ecx, dword [ebp - 0x44]
sbb edx, eax
mov eax, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
add eax, ecx
adc esi, edx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], esi
jmp 0x1004ba07
movsx ecx, word [ebp - 0x24]
movsx edx, byte [ebp - 0x13]
imul ecx, edx
mov word [ebp - 0x24], cx
movzx eax, word [ebp - 0x20]
add eax, 0xcbbeb13
mov word [0x100d31b0], ax
movzx eax, word [ebp - 0x20]
sar eax, 1
cdq
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov eax, dword [0x100d3134]
not eax
cdq
mov dword [0x100d3150], eax
mov dword [0x100d3154], edx
movsx ecx, word [ebp - 0x24]
add ecx, dword [ebp - 0x68]
movsx edx, word [ebp - 0x24]
add edx, ecx
mov word [ebp - 0x24], dx
jmp 0x1004bb3c
movsx eax, byte [0x100d3026]
test eax, eax
jne 0x1004bb3c
movzx ecx, byte [ebp - 0x12]
test ecx, ecx
je 0x1004bb3c
movsx eax, byte [ebp - 0x14]
cdq
mov ecx, eax
mov esi, edx
movzx eax, byte [ebp - 0x12]
cdq
add eax, dword [ebp - 0x80]
adc edx, dword [ebp - 0x7c]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x690], ecx
mov dword [ebp - 0x68c], esi
mov edx, dword [ebp - 0x690]
or edx, dword [ebp - 0x68c]
jne 0x1004ba6d
xor eax, eax
mov dword [ebp - 0x424], 1
mov dword [ebp - 0x420], eax
jmp 0x1004ba78
xorps xmm0, xmm0
movlpd qword [ebp - 0x424], xmm0
movzx eax, byte [ebp - 0x18]
cdq
mov ecx, eax
mov esi, edx
mov edx, dword [0x100d31a4]
sub ecx, dword [0x100d31a0]
sbb esi, edx
mov eax, dword [ebp - 0x68]
cdq
add eax, dword [0x100d3148]
adc edx, dword [0x100d314c]
add ecx, eax
adc esi, edx
add ecx, dword [ebp - 0x424]
adc esi, dword [ebp - 0x420]
mov dword [ebp - 0x698], ecx
mov dword [ebp - 0x694], esi
mov eax, dword [ebp - 0x698]
or eax, dword [ebp - 0x694]
jne 0x1004badd
xor ecx, ecx
mov dword [ebp - 0x42c], 1
mov dword [ebp - 0x428], ecx
jmp 0x1004bae8
xorps xmm0, xmm0
movlpd qword [ebp - 0x42c], xmm0
mov edx, dword [ebp - 0x42c]
mov eax, dword [ebp - 0x428]
mov dword [0x100d3148], edx
mov dword [0x100d314c], eax
xor ecx, ecx
mov dword [ebp - 0x54], 9
mov dword [ebp - 0x50], ecx
mov edx, dword [0x100d3140]
mov eax, 4
imul ecx, eax, 0x79
mov dword [ecx + 0x101bcc58], edx
movsx edx, word [0x100d312c]
imul eax, edx, 0x46e7e9cb
cdq
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
mov eax, 2
mov word [ebp - 0x1c], ax
mov ecx, dword [ebp - 0xb0]
add ecx, 0x76f
mov dword [ebp - 0x984], ecx
movsx eax, byte [ebp - 0x15]
cdq
mov ecx, dword [0x100d318c]
push ecx
mov ecx, dword [0x100d3188]
push ecx
push edx
push eax
call fcn.100a25b0
mov dl, byte [ebp - 0x15]
mov ecx, eax
sar dl, cl
mov byte [ebp - 0x15], dl
movzx eax, byte [0x100d304f]
cdq
push 0xcabd9
push 0x80e61285
push edx
push eax
call fcn.100a25b0
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
movsx eax, byte [ebp - 0x14]
cdq
mov ecx, dword [0x100d3180]
mov esi, dword [0x100d3184]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov dword [ebp - 0x68], eax
mov edx, dword [0x100d3168]
or edx, dword [0x100d316c]
je 0x1004bbd5
mov eax, dword [0x100d3168]
mov ecx, dword [0x100d316c]
mov dword [ebp - 0x3a8], eax
mov dword [ebp - 0x3a4], ecx
jmp 0x1004bbe9
mov edx, dword [0x100d3170]
xor eax, eax
mov dword [ebp - 0x3a8], edx
mov dword [ebp - 0x3a4], eax
mov ecx, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x3a4]
mov dword [0x100d3120], ecx
mov dword [0x100d3124], edx
mov eax, dword [0x100d3c78]
mov dword [0x100d311c], eax
movzx eax, byte [0x100d3063]
shl eax, 5
cdq
mov dword [0x100d3180], eax
mov dword [0x100d3184], edx
mov ecx, dword [ebp - 0xb0]
add ecx, 0x733
mov dword [ebp - 0x2f8], ecx
mov edx, dword [0x100d3150]
or edx, dword [0x100d3154]
je 0x1004bfee
mov dword [ebp - 0xb4], 0
jmp 0x1004bc60
mov eax, dword [ebp - 0xb4]
add eax, 1
mov dword [ebp - 0xb4], eax
cmp dword [ebp - 0xb4], 0x34a
jge 0x1004bfee
mov dword [ebp - 4], 2
movsx eax, word [0x100d3128]
cdq
mov dword [ebp - 0x6a0], eax
mov dword [ebp - 0x69c], edx
mov ecx, dword [0x100d3150]
cmp ecx, dword [ebp - 0x6a0]
jne 0x1004bca7
mov edx, dword [0x100d3154]
cmp edx, dword [ebp - 0x69c]
je 0x1004bcb3
mov dword [ebp - 0x1b8], 1
jmp 0x1004bcbd
mov dword [ebp - 0x1b8], 0
cmp dword [0x100d3150], 0x48
jne 0x1004bccf
cmp dword [0x100d3154], 0
je 0x1004bcdb
mov dword [ebp - 0x1bc], 1
jmp 0x1004bce5
mov dword [ebp - 0x1bc], 0
mov eax, dword [ebp - 0x1b8]
cmp eax, dword [ebp - 0x1bc]
jg 0x1004bd91
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x6a8], ecx
mov dword [ebp - 0x6a4], edx
mov eax, dword [ebp - 0x6a8]
cmp eax, dword [ebp - 0x70]
jne 0x1004bd8c
mov ecx, dword [ebp - 0x6a4]
cmp ecx, dword [ebp - 0x6c]
jne 0x1004bd8c
mov eax, dword [0x100d311c]
cdq
mov ecx, dword [0x100d31a0]
mov esi, dword [0x100d31a4]
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov dword [0x100d311c], eax
movzx eax, byte [0x100d3063]
cdq
add eax, dword [ebp - 0x4c]
mov byte [0x100d3063], al
movsx eax, word [ebp - 0x24]
cdq
mov ecx, dword [ebp - 0x7c]
push ecx
mov ecx, dword [ebp - 0x80]
push ecx
push edx
push eax
call fcn.100a25b0
mov word [ebp - 0x24], ax
mov dx, word [ebp - 0x34]
mov word [ebp - 0x34], dx
mov eax, dword [0x100d3174]
sub eax, 0x1b2253b0
mov word [ebp - 0x20], ax
movzx eax, word [ebp - 0x28]
cdq
and eax, 0xc6c5d0fc
mov dword [0x100d3134], eax
jmp 0x1004bf24
mov ecx, dword [ebp - 0x80]
or ecx, dword [ebp - 0x7c]
je 0x1004be6a
movsx edx, word [0x100d3128]
movzx eax, word [ebp - 0x20]
add edx, eax
mov word [0x100d3128], dx
mov ecx, dword [0x100d3180]
mov edx, dword [0x100d3184]
mov dword [ebp - 0x988], edx
sub ecx, 0xfadcd62f
mov word [ebp - 0x1c], cx
movzx eax, byte [0x100d3063]
cdq
add eax, dword [ebp - 0x80]
adc edx, dword [ebp - 0x7c]
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], edx
mov eax, dword [0x100d3198]
mov ecx, dword [0x100d319c]
mov dword [ebp - 0x98c], ecx
sub eax, 0x361bc938
mov word [0x100d312c], ax
movzx edx, word [ebp - 0x20]
imul edx, dword [0x100d311c]
movzx eax, word [ebp - 0x20]
add eax, edx
mov word [ebp - 0x20], ax
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x6b0], ecx
mov dword [ebp - 0x6ac], edx
mov eax, dword [ebp - 0x6b0]
or eax, dword [ebp - 0x6ac]
je 0x1004be4c
mov ecx, dword [0x100d3188]
mov edx, dword [0x100d318c]
mov dword [ebp - 0x434], ecx
mov dword [ebp - 0x430], edx
jmp 0x1004be5c
mov eax, dword [ebp - 0x68]
cdq
mov dword [ebp - 0x434], eax
mov dword [ebp - 0x430], edx
mov al, byte [ebp - 0x434]
mov byte [ebp - 0x18], al
jmp 0x1004bf24
mov ecx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x40]
not ecx
not esi
mov eax, dword [0x100d311c]
cdq
mov dword [ebp - 0x6b8], ecx
mov dword [ebp - 0x6b4], esi
mov dword [ebp - 0x6c0], eax
mov dword [ebp - 0x6bc], edx
mov edx, dword [ebp - 0x6b8]
cmp edx, dword [ebp - 0x6c0]
jne 0x1004beae
mov eax, dword [ebp - 0x6b4]
cmp eax, dword [ebp - 0x6bc]
je 0x1004bf24
movsx ecx, word [ebp - 0x34]
add ecx, dword [0x100d3158]
movzx edx, byte [ebp - 0x17]
not edx
add ecx, edx
xor eax, eax
mov dword [0x100d31a0], ecx
mov dword [0x100d31a4], eax
mov cl, byte [0x100d3c78]
mov byte [ebp - 0x12], cl
mov edx, dword [0x100d3188]
sub edx, dword [0x100d3120]
mov eax, dword [0x100d318c]
sbb eax, dword [0x100d3124]
mov dword [0x100d3188], edx
mov dword [0x100d318c], eax
mov ecx, dword [0x100d3c78]
mov dword [0x100d3144], ecx
xor edx, edx
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
add eax, dword [0x100d3170]
adc ecx, edx
mov edx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
sub edx, eax
sbb esi, ecx
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], esi
jmp 0x1004bfc9
mov dword [ebp - 4], 0xffffffff
jmp 0x1004bfd9
mov ax, word [0x100d3128]
add ax, 1
mov word [0x100d3128], ax
jmp 0x1004bc51
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultUILanguage]
mov word [ebp - 0x84], ax
movsx ecx, word [ebp - 0x30]
movsx edx, byte [ebp - 0x16]
sub ecx, edx
movsx eax, word [ebp - 0x30]
add eax, ecx
mov word [ebp - 0x30], ax
mov ecx, dword [0x100d3c78]
xor edx, edx
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x58], edx
mov eax, 4
imul ecx, eax, 0x1f70
xor edx, edx
mov eax, dword [0x100d3198]
mov esi, dword [0x100d319c]
sub eax, dword [ecx + 0x100fae60]
sbb esi, edx
mov dword [0x100d3198], eax
mov dword [0x100d319c], esi
mov cx, word [ebp - 0x34]
mov word [ebp - 0x1c], cx
mov dl, byte [ebp - 0x13]
mov byte [0x100d304f], dl
mov eax, dword [ebp - 0x1c0]
sub eax, dword [ebp - 0x1c4]
mov ecx, dword [ebp - 0x1c0]
xor ecx, dword [ebp - 0x1c4]
mov edx, dword [ebp - 0x1c8]
imul edx, dword [ebp - 0x1c8]
sub ecx, edx
cmp eax, ecx
je 0x10051c46
jmp 0x1004c0a3
jmp 0x1004c0c8
jmp 0x1004c0d4
jmp 0x1004c107
movsx eax, word [ebp - 0x2c]
mov ecx, dword [0x100d3144]
sub ecx, eax
mov edx, dword [0x100d3144]
and edx, ecx
mov dword [0x100d3144], edx
mov eax, dword [0x100d3158]
sub eax, 0x7801eb56
mov ecx, dword [0x100d3190]
sub ecx, eax
mov dword [0x100d3190], ecx
movsx edx, word [ebp - 0x2c]
imul edx, dword [0x100d3190]
movsx eax, word [ebp - 0x2c]
add eax, edx
mov word [ebp - 0x2c], ax
movzx eax, word [0x100d3178]
cdq
push 0xa6401
push 0xdbbc884b
push edx
push eax
call fcn.100a25b0
mov byte [ebp - 0x14], al
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
sub ecx, 0xb81d2245
sbb edx, 0x470b
add ecx, dword [0x100d3188]
adc edx, dword [0x100d318c]
mov dword [0x100d3188], ecx
mov dword [0x100d318c], edx
movzx eax, word [ebp - 0x84]
cmp eax, 0x42b
jne 0x1004c333
mov ecx, dword [0x100d3188]
mov edx, 4
imul eax, edx, 0xb
mov dword [eax + 0x103372c0], ecx
movsx ecx, byte [ebp - 0x14]
xor ecx, dword [0x100d3174]
imul ecx, dword [0x100d3174]
mov dword [0x100d3174], ecx
movzx eax, byte [0x100d304f]
cdq
sub eax, 0xc2b60e7a
mov word [ebp - 0x24], ax
movsx eax, word [0x100d31b0]
cdq
mov ecx, eax
mov edx, dword [ebp - 0x4c]
not edx
sub ecx, edx
movzx eax, byte [ebp - 0x18]
cdq
add ecx, eax
movzx eax, byte [ebp - 0x12]
movsx edx, byte [ebp - 0x16]
add eax, edx
movsx edx, byte [ebp - 0x13]
movzx esi, word [ebp - 0x1c]
xor edx, esi
add eax, edx
cdq
or ecx, eax
mov byte [ebp - 0x13], cl
movzx eax, byte [0x100d3063]
add eax, 0x44c9c9ad
mov byte [0x100d3063], al
movsx ecx, word [0x100d31b0]
test ecx, ecx
jne 0x1004c23e
mov dword [ebp - 0x1cc], 1
jmp 0x1004c248
mov dword [ebp - 0x1cc], 0
movsx edx, word [ebp - 0x24]
imul edx, dword [ebp - 0x1cc]
movsx eax, byte [0x100d304e]
xor edx, eax
jne 0x1004c26a
mov dword [ebp - 0x1d0], 1
jmp 0x1004c274
mov dword [ebp - 0x1d0], 0
mov ecx, dword [ebp - 0x1d0]
mov dword [0x100d3170], ecx
mov edx, dword [0x100d31a8]
mov eax, dword [0x100d31ac]
mov dword [ebp - 0x6c8], edx
mov dword [ebp - 0x6c4], eax
mov ecx, dword [ebp - 0x6c8]
or ecx, dword [ebp - 0x6c4]
je 0x1004c329
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x74]
sub edx, dword [0x100d3188]
sbb eax, dword [0x100d318c]
mov ecx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
add ecx, edx
adc esi, eax
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x74], esi
mov eax, dword [ebp - 0x80]
mov edx, dword [ebp - 0x7c]
mov cl, 1
call fcn.100a25f0
mov word [0x100d3128], ax
movsx eax, byte [ebp - 0x13]
sub eax, 0x5add7473
cdq
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], edx
movsx eax, word [0x100d3128]
add eax, 0x23d9
cdq
mov ecx, dword [0x100d3160]
sub ecx, eax
mov eax, dword [0x100d3164]
sbb eax, edx
mov dword [0x100d3160], ecx
mov dword [0x100d3164], eax
movsx eax, word [0x100d312c]
cdq
add eax, dword [ebp - 0x4c]
adc edx, dword [ebp - 0x48]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], edx
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x100af6e0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov word [0x100d31b0], ax
mov ecx, dword [ebp - 0x510]
imul ecx, dword [ebp - 0x1d4]
mov edx, dword [ebp - 0xb8]
add edx, dword [ebp - 0x1d4]
add ecx, edx
mov eax, dword [ebp - 0xb8]
add eax, dword [ebp - 0xb8]
cmp ecx, eax
je 0x10051c46
mov ecx, 9
mov esi, str.Errorappendingmig:
lea edi, [ebp - 0xa84]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea ecx, [ebp - 0xa84]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cdq
mov dword [0x100d3188], eax
mov dword [0x100d318c], edx
mov edx, dword [str.UNINITIALIZED]
mov dword [ebp - 0x8d8], edx
mov eax, dword [0x100af714]
mov dword [ebp - 0x8d4], eax
mov ecx, dword [0x100af718]
mov dword [ebp - 0x8d0], ecx
mov dx, word [0x100af71c]
mov word [ebp - 0x8cc], dx
lea eax, [ebp - 0x8d8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [0x100d3170], eax
movzx ecx, word [ebp - 0x84]
cmp ecx, 0x42c
je 0x1004c405
movzx edx, word [ebp - 0x84]
cmp edx, 0x82c
jne 0x1004cc1e
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x58]
mov dword [ebp - 0x990], ecx
add eax, 0xc03
mov byte [ebp - 0x18], al
movsx eax, byte [0x100d304e]
cdq
add eax, 0x907c6e88
adc edx, 0xe8e0e
mov dword [0x100d3138], eax
mov dword [0x100d313c], edx
movsx edx, word [ebp - 0x34]
sub edx, 0x2b
mov dword [0x100d3158], edx
movzx eax, word [0x100d3178]
test eax, eax
jne 0x1004c45b
mov dword [ebp - 0x1d8], 1
jmp 0x1004c465
mov dword [ebp - 0x1d8], 0
movzx eax, byte [ebp - 0x17]
cdq
mov ecx, eax
mov esi, edx
add ecx, dword [ebp - 0x80]
adc esi, dword [ebp - 0x7c]
movzx eax, byte [ebp - 0x11]
movzx edx, byte [0x100d3063]
add eax, edx
cdq
add ecx, eax
adc esi, edx
movsx eax, word [0x100d3130]
imul eax, dword [0x100d31b4]
movsx edx, word [ebp - 0x34]
not edx
add eax, dword [ebp - 0x1d8]
add edx, eax
xor eax, eax
add ecx, edx
adc esi, eax
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x48], esi
movsx ecx, byte [ebp - 0x14]
movzx edx, word [ebp - 0x28]
sub ecx, edx
movsx eax, byte [0x100d3026]
imul ecx, eax
not ecx
mov byte [ebp - 0x16], cl
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x38]
mov dword [ebp - 0x6d0], ecx
mov dword [ebp - 0x6cc], edx
mov dword [ebp - 0x6d8], eax
mov dword [ebp - 0x6d4], esi
mov ecx, dword [ebp - 0x6d0]
cmp ecx, dword [ebp - 0x6d8]
jne 0x1004c507
mov edx, dword [ebp - 0x6cc]
cmp edx, dword [ebp - 0x6d4]
je 0x1004c513
mov dword [ebp - 0x1dc], 1
jmp 0x1004c51d
mov dword [ebp - 0x1dc], 0
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x6e0], eax
mov dword [ebp - 0x6dc], ecx
cmp dword [ebp - 0x6e0], 7
jne 0x1004c541
cmp dword [ebp - 0x6dc], 0
je 0x1004c54d
mov dword [ebp - 0x1e0], 1
jmp 0x1004c557
mov dword [ebp - 0x1e0], 0
mov edx, dword [ebp - 0x1dc]
cmp edx, dword [ebp - 0x1e0]
jl 0x1004cba3
movzx eax, byte [0x100d3063]
movsx ecx, byte [0x100d304e]
cmp eax, ecx
jle 0x1004c587
mov dword [ebp - 0x1e4], 1
jmp 0x1004c591
mov dword [ebp - 0x1e4], 0
movzx edx, byte [0x100d3063]
cmp edx, 0x4d
jle 0x1004c5a9
mov dword [ebp - 0x1e8], 1
jmp 0x1004c5b3
mov dword [ebp - 0x1e8], 0
mov eax, dword [ebp - 0x1e4]
cmp eax, dword [ebp - 0x1e8]
jle 0x1004cb2e
movsx ecx, byte [0x100d304e]
test ecx, ecx
jne 0x1004c5dc
mov dword [ebp - 0x1ec], 1
jmp 0x1004c5e6
mov dword [ebp - 0x1ec], 0
movsx edx, word [0x100d31b0]
not edx
cmp edx, dword [ebp - 0x1ec]
jge 0x1004c603
mov dword [ebp - 0x1f8], 1
jmp 0x1004c60d
mov dword [ebp - 0x1f8], 0
movsx eax, word [ebp - 0x30]
test eax, eax
jne 0x1004c621
mov dword [ebp - 0x1f0], 1
jmp 0x1004c62b
mov dword [ebp - 0x1f0], 0
cmp dword [ebp - 0x1f0], 0x8d920358
ja 0x1004c643
mov dword [ebp - 0x1f4], 1
jmp 0x1004c64d
mov dword [ebp - 0x1f4], 0
mov ecx, dword [ebp - 0x1f4]
not ecx
cmp dword [ebp - 0x1f8], ecx
jle 0x1004cab0
movzx edx, byte [ebp - 0x12]
cmp edx, 0x89dd2e81
je 0x1004c679
mov dword [ebp - 0x1fc], 1
jmp 0x1004c683
mov dword [ebp - 0x1fc], 0
mov eax, dword [0x100d3138]
not eax
mov ecx, dword [0x100d313c]
not ecx
mov dword [ebp - 0x6e8], eax
mov dword [ebp - 0x6e4], ecx
mov edx, dword [ebp - 0x6e8]
or edx, dword [ebp - 0x6e4]
jne 0x1004c6c0
movsx eax, word [ebp - 0x30]
test eax, eax
jne 0x1004c6c0
mov dword [ebp - 0x200], 1
jmp 0x1004c6ca
mov dword [ebp - 0x200], 0
mov ecx, dword [ebp - 0x1fc]
cmp ecx, dword [ebp - 0x200]
jg 0x1004ca4d
mov edx, 4
mov word [ebp - 0x2c], dx
mov eax, 4
imul ecx, eax, 0x3ef9
mov dl, byte [ecx + 0x10129e80]
mov byte [ebp - 0x11], dl
movsx eax, byte [ebp - 0x15]
cdq
add eax, 0x6eaaf397
mov word [0x100d315c], ax
xor eax, eax
mov dword [0x100d3120], 0x3f91
mov dword [0x100d3124], eax
movzx ecx, word [ebp - 0x20]
imul edx, ecx, 0x6e6e
mov byte [ebp - 0x16], dl
mov eax, dword [0x100d3144]
add eax, dword [0x100d3120]
mov dword [ebp - 0x68], eax
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x40]
sub ecx, dword [ebp - 0x44]
sbb edx, eax
mov eax, dword [ebp - 0x64]
mov esi, dword [ebp - 0x60]
push edx
push ecx
push esi
push eax
call fcn.100a25b0
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
movsx ecx, word [ebp - 0x2c]
mov dword [ebp - 0x204], ecx
cmp dword [ebp - 0x204], 4
ja case.default.0x1004c775
mov edx, dword [ebp - 0x204]
jmp dword [edx*4 + 0x10051d78]
movsx eax, word [ebp - 0x2c]
add eax, 0x9f
mov word [0x100d31b0], ax
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
push 0xa41ed
push 0x8fc3c5fc
push edx
push ecx
call fcn.100a25b0
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x38]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x38], esi
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x994], eax
xor edx, 0xfd
mov dword [0x100d3134], edx
mov ecx, dword [0x100d31a0]
mov edx, dword [0x100d31a4]
push edx
push ecx
mov eax, dword [ebp - 0x48]
push eax
mov ecx, dword [ebp - 0x4c]
push ecx
call fcn.100a25b0
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], edx
mov edx, dword [0x100d3120]
xor edx, 0xa9
mov eax, dword [0x100d3124]
xor eax, 0
mov dword [0x100d3168], edx
mov dword [0x100d316c], eax
movzx eax, word [ebp - 0x1c]
cdq
and eax, 0x9456f29
mov byte [0x100d3063], al
jmp case.default.0x1004c775
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
push 0
push 0x6c9f1c53
push edx
push ecx
call fcn.100a25b0
mov byte [ebp - 0x16], al
movsx eax, byte [ebp - 0x16]
test eax, eax
je 0x1004c849
movsx ecx, word [ebp - 0x34]
mov dword [ebp - 0x208], ecx
jmp 0x1004c853
movzx edx, byte [ebp - 0x12]
mov dword [ebp - 0x208], edx
mov ax, word [ebp - 0x208]
mov word [0x100d3178], ax
movzx eax, byte [ebp - 0x11]
movzx ecx, word [ebp - 0x20]
add eax, ecx
cdq
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
jmp case.default.0x1004c775
mov dx, word [0x100d3c78]
mov word [ebp - 0x24], dx
mov eax, dword [ebp - 0x70]
sub eax, 0xae29805b
mov ecx, dword [ebp - 0x6c]
sbb ecx, 0
mov dword [0x100d3180], eax
mov dword [0x100d3184], ecx
mov eax, dword [0x100d3134]
cdq
push 0x95483
push 0x8af9fad
push edx
push eax
call fcn.100a25b0
mov word [0x100d3130], ax
movzx edx, word [0x100d3178]
mov eax, dword [0x100d3170]
sub eax, edx
mov dword [0x100d3170], eax
mov byte [0x100d304e], 0x9f
mov eax, dword [ebp - 0x68]
cdq
mov ecx, dword [0x100d3198]
mov esi, dword [0x100d319c]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov dword [0x100d3198], eax
mov dword [0x100d319c], edx
jmp case.default.0x1004c775
mov edx, dword [0x100d3c78]
xor eax, eax
mov dword [0x100d3120], edx
mov dword [0x100d3124], eax
movzx ecx, word [ebp - 0x1c]
shl ecx, 1
mov dword [0x100d3174], ecx
movsx edx, byte [ebp - 0x13]
imul eax, edx, 0x2a
cdq
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
movsx eax, byte [ebp - 0x16]
cdq
mov ecx, dword [0x100d3168]
sub ecx, eax
mov eax, dword [0x100d316c]
sbb eax, edx
mov dword [0x100d3168], ecx
mov dword [0x100d316c], eax
mov ecx, dword [0x100d3c78]
xor edx, edx
mov dword [0x100d31a8], ecx
mov dword [0x100d31ac], edx
movsx eax, word [0x100d31b0]
cdq
mov ecx, dword [ebp - 0x80]
sub ecx, eax
mov eax, dword [ebp - 0x7c]
sbb eax, edx
add ecx, dword [ebp - 0x80]
adc eax, dword [ebp - 0x7c]
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x7c], eax
jmp case.default.0x1004c775
movzx eax, word [ebp - 0x28]
cdq
mov ecx, eax
mov esi, edx
mov edx, dword [ebp - 0x60]
sub ecx, dword [ebp - 0x64]
sbb esi, edx
movzx eax, word [ebp - 0x28]
cdq
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov word [ebp - 0x28], ax
mov eax, dword [ebp - 0x4c]
not eax
add eax, dword [ebp - 0x4c]
mov word [ebp - 0x28], ax
movsx ecx, byte [ebp - 0x15]
test ecx, ecx
jne 0x1004c9c8
xor edx, edx
mov dword [ebp - 0x444], 1
mov dword [ebp - 0x440], edx
jmp 0x1004c9d3
xorps xmm0, xmm0
movlpd qword [ebp - 0x444], xmm0
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
add eax, dword [ebp - 0x444]
adc ecx, dword [ebp - 0x440]
mov dword [ebp - 0x6f0], eax
mov dword [ebp - 0x6ec], ecx
mov edx, dword [ebp - 0x6f0]
or edx, dword [ebp - 0x6ec]
jne 0x1004ca08
mov byte [ebp - 0x85], 1
jmp 0x1004ca0f
mov byte [ebp - 0x85], 0
mov al, byte [ebp - 0x85]
mov byte [0x100d304e], al
movsx ecx, byte [ebp - 0x15]
imul ecx, dword [0x100d3134]
mov dword [0x100d3134], ecx
movzx eax, word [0x100d315c]
cdq
mov ecx, eax
add ecx, dword [0x100d3138]
movzx eax, word [0x100d315c]
cdq
sub eax, ecx
mov word [0x100d315c], ax
jmp 0x1004caae
mov edx, dword [0x100d3168]
mov eax, 4
imul ecx, eax, 0x1b54
mov dword [ecx + 0x1022c100], edx
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x38]
push 0
push 0x9ff70bfe
push eax
push edx
call fcn.100a25b0
mov ecx, dword [0x100d3158]
add ecx, dword [0x100d3134]
xor eax, ecx
not eax
mov byte [ebp - 0x12], al
mov edx, 0x819e
mov word [ebp - 0x1c], dx
mov eax, 8
mov word [ebp - 0x2c], ax
movzx ecx, word [0x100d3178]
shl ecx, 8
mov word [0x100d3128], cx
jmp 0x1004cb2c
mov edx, dword [0x100d3120]
add edx, 0xac6f31cf
mov eax, dword [0x100d3124]
adc eax, 0x76859
mov dword [ebp - 0x5c], edx
mov dword [ebp - 0x58], eax
movsx ecx, byte [ebp - 0x15]
test ecx, ecx
jne 0x1004cae0
mov dword [ebp - 0x20c], 1
jmp 0x1004caea
mov dword [ebp - 0x20c], 0
movsx edx, byte [0x100d304e]
add edx, dword [ebp - 0x20c]
mov word [ebp - 0x28], dx
movzx eax, word [ebp - 0x28]
imul eax, dword [0x100d3170]
mov word [ebp - 0x28], ax
movsx eax, word [0x100d3130]
cdq
sub eax, dword [0x100d3160]
mov word [0x100d3130], ax
movzx eax, byte [ebp - 0x12]
add eax, 0x3a
cdq
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
jmp 0x1004cba1
movsx ecx, word [ebp - 0x2c]
test ecx, ecx
je 0x1004cba1
movzx edx, byte [ebp - 0x18]
movsx eax, word [ebp - 0x34]
imul edx, eax
mov byte [ebp - 0x18], dl
mov ecx, dword [0x100d3170]
sub ecx, dword [0x100d3150]
mov edx, dword [0x100d3170]
sub edx, ecx
mov dword [0x100d3170], edx
mov eax, 0x6695
mov word [ebp - 0x34], ax
mov ecx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x998], edx
xor ecx, 0x9c4b90f1
mov word [0x100d315c], cx
movsx eax, word [ebp - 0x30]
cdq
mov ecx, dword [0x100d3198]
mov esi, dword [0x100d319c]
add ecx, eax
adc esi, edx
mov dword [0x100d3198], ecx
mov dword [0x100d319c], esi
jmp 0x1004cc14
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0x99c], edx
add ecx, 0xe18b6284
movzx eax, byte [ebp - 0x11]
cdq
sub eax, ecx
mov byte [ebp - 0x11], al
mov eax, dword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
mov cl, 7
call fcn.100a26c0
mov word [ebp - 0x1c], ax
mov eax, dword [0x100d3144]
sub eax, 0x1082431a
mov word [0x100d3130], ax
push 0
push 0x1e
mov ecx, dword [0x100d313c]
push ecx
mov edx, dword [0x100d3138]
push edx
call fcn.100a25b0
mov dword [0x100d3120], eax
mov dword [0x100d3124], edx
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x9a0], ecx
sub eax, 0x42
mov byte [ebp - 0x12], al
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov edx, dword [0x100d3140]
xor eax, eax
mov ecx, dword [0x100d31a0]
mov esi, dword [0x100d31a4]
push esi
push ecx
push eax
push edx
call fcn.100a25b0
mov dword [0x100d3140], eax
mov eax, dword [0x100d3134]
cdq
mov ecx, eax
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x9a4], eax
add ecx, edx
mov eax, dword [0x100d3134]
cdq
sub eax, ecx
mov dword [0x100d3134], eax
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
push 0x886cd
push 0x785f1333
push edx
push ecx
call fcn.100a25b0
mov dword [0x100d3134], eax
mov eax, 1
imul ecx, eax, 6
mov dl, byte [0x100d315c]
mov byte [ecx + 0x1019a1f0], dl
movsx eax, word [ebp - 0x34]
add eax, dword [0x100d31b4]
mov word [ebp - 0x34], ax
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x6c]
mov cl, 6
call fcn.100a25f0
mov dword [0x100d3160], eax
mov dword [0x100d3164], edx
mov ecx, dword [ebp - 0xbc]
imul ecx, dword [ebp - 0xbc]
mov edx, dword [ebp - 0x514]
or edx, 0x38
imul ecx, edx
mov eax, dword [ebp - 0x518]
xor eax, dword [ebp - 0xbc]
cmp ecx, eax
je 0x10051c46
mov ecx, dword [0x100d3c78]
xor edx, edx
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x6c], edx
mov ecx, dword [0x100d3198]
mov edx, dword [0x100d319c]
mov dword [ebp - 0x9a8], edx
and ecx, 0x5be7bc95
movsx eax, word [0x100d3130]
cdq
mov edx, dword [0x100d31a0]
mov esi, dword [0x100d31a4]
mov dword [ebp - 0x9ac], esi
add eax, edx
sub ecx, eax
mov dword [0x100d311c], ecx
mov eax, dword [0x100d3148]
sub eax, 0x20
mov word [ebp - 0x20], ax
mov ecx, dword [0x100d3148]
or ecx, dword [0x100d314c]
je 0x1004cd63
mov edx, dword [0x100d3120]
mov eax, dword [0x100d3124]
mov dword [ebp - 0x44c], edx
mov dword [ebp - 0x448], eax
jmp 0x1004cd77
movsx eax, byte [0x100d3026]
cdq
mov dword [ebp - 0x44c], eax
mov dword [ebp - 0x448], edx
mov ecx, dword [ebp - 0x44c]
mov dword [0x100d3158], ecx
mov dl, byte [0x100d315c]
mov byte [ebp - 0x14], dl
push 0x6f
movzx eax, word [0x100d3134]
push eax
call fcn.1005b280
add esp, 8
mov byte [ebp - 0x17], al
movzx ecx, byte [ebp - 0x17]
test ecx, ecx
jge 0x1004cdb5
mov dword [ebp - 0x210], 1
jmp 0x1004cdbf
mov dword [ebp - 0x210], 0
movzx edx, byte [ebp - 0x17]
cmp edx, 0x20
jge 0x1004cdd4
mov dword [ebp - 0x214], 1
jmp 0x1004cdde
mov dword [ebp - 0x214], 0
mov eax, dword [ebp - 0x210]
cmp eax, dword [ebp - 0x214]
jle 0x1004d021
xor ecx, ecx
mov dword [0x100d3150], 1
mov dword [0x100d3154], ecx
mov byte [ebp - 0x12], 2
movzx eax, byte [ebp - 0x11]
cdq
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x9b0], ecx
add eax, edx
mov byte [ebp - 0x11], al
movzx edx, word [ebp - 0x1c]
sub edx, 0xa557
mov dword [0x100d31b4], edx
mov eax, 4
imul ecx, eax, 0x7b
mov edx, dword [ecx + 0x101bcc58]
xor eax, eax
mov dword [0x100d3138], edx
mov dword [0x100d313c], eax
mov ecx, dword [0x100d3150]
mov edx, dword [0x100d3154]
mov dword [ebp - 0x3a0], ecx
mov dword [ebp - 0x39c], edx
mov eax, dword [ebp - 0x3a0]
or eax, dword [ebp - 0x39c]
je 0x1004ce88
cmp dword [ebp - 0x3a0], 1
jne 0x1004ce83
cmp dword [ebp - 0x39c], 0
je 0x1004cf14
jmp 0x1004d021
movzx ecx, byte [ebp - 0x17]
movzx edx, byte [ebp - 0x17]
add ecx, edx
movsx eax, byte [0x100d3026]
movsx edx, word [0x100d3130]
and eax, edx
imul ecx, eax
imul eax, ecx, 0x2147acad
cdq
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], edx
movsx eax, byte [ebp - 0x13]
cdq
mov ecx, 8
imul ecx, ecx, 0x75
mov dword [ecx + 0x10175cb8], eax
mov dword [ecx + 0x10175cbc], edx
mov edx, dword [0x100d3c78]
xor eax, eax
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x6c], eax
movsx eax, word [0x100d3128]
cdq
sub eax, 0x1ffe1410
sbb edx, 0xcf026
mov dword [0x100d3148], eax
mov dword [0x100d314c], edx
movzx ecx, word [ebp - 0x28]
movsx edx, word [0x100d31b0]
imul ecx, edx
movzx eax, word [ebp - 0x28]
sub eax, ecx
mov word [ebp - 0x28], ax
jmp 0x1004d021
mov ecx, dword [0x100d31a8]
mov edx, dword [0x100d31ac]
push 0
push 0x4163
push edx
push ecx
call fcn.100a25b0
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
movsx eax, byte [ebp - 0x14]
cdq
add eax, 0xc0524838
mov byte [0x100d304f], al
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x58]
push 0xfb94
push 0xb3318788
push ecx
push eax
call fcn.100a25b0
mov ecx, eax
movsx eax, byte [0x100d3026]
cdq
add eax, ecx
mov byte [0x100d3026], al
movzx edx, byte [ebp - 0x12]
test edx, edx
jne 0x1004cf87
xor eax, eax
mov dword [ebp - 0x6f8], 1
mov dword [ebp - 0x6f4], eax
jmp 0x1004cf92
xorps xmm0, xmm0
movlpd qword [ebp - 0x6f8], xmm0
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x9b4], edx
sub ecx, dword [ebp - 0x6f8]
not ecx
sub ecx, dword [0x100d31b4]
mov word [ebp - 0x1c], cx
mov eax, dword [0x100d3120]
add eax, 0x7fda77eb
mov ecx, dword [0x100d3124]
adc ecx, 0x8bb7
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], ecx
mov edx, dword [0x100d31b4]
not edx
movsx eax, byte [ebp - 0x15]
sub edx, eax
movzx ecx, word [0x100d3178]
add ecx, dword [0x100d31b4]
sub edx, ecx
jne 0x1004cfff
xor edx, edx
mov dword [ebp - 0x454], 1
mov dword [ebp - 0x450], edx
jmp 0x1004d00a
xorps xmm0, xmm0
movlpd qword [ebp - 0x454], xmm0
mov eax, dword [ebp - 0x454]
mov ecx, dword [ebp - 0x450]
mov dword [0x100d3138], eax
mov dword [0x100d313c], ecx
movzx edx, word [ebp - 0x84]
cmp edx, 0x423
jne 0x1004d33c
movsx eax, word [0x100d3128]
movzx ecx, byte [ebp - 0x12]
not ecx
cmp eax, ecx
jg 0x1004d051
mov dword [ebp - 0x218], 1
jmp 0x1004d05b
mov dword [ebp - 0x218], 0
movsx edx, word [0x100d3130]
test edx, edx
jne 0x1004d09b
mov eax, dword [0x100d31a8]
mov ecx, dword [0x100d31ac]
not eax
not ecx
mov dword [ebp - 0x700], eax
mov dword [ebp - 0x6fc], ecx
mov edx, dword [ebp - 0x700]
or edx, dword [ebp - 0x6fc]
jne 0x1004d09b
mov dword [ebp - 0x21c], 0
jmp 0x1004d0a5
mov dword [ebp - 0x21c], 1
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x58]
mov dword [ebp - 0x708], eax
mov dword [ebp - 0x704], ecx
mov edx, dword [ebp - 0x708]
or edx, dword [ebp - 0x704]
jne 0x1004d119
mov ecx, dword [0x100d3180]
mov esi, dword [0x100d3184]
movsx eax, word [0x100d3130]
cdq
mov dword [ebp - 0x710], ecx
mov dword [ebp - 0x70c], esi
mov dword [ebp - 0x544], eax
mov dword [ebp - 0x540], edx
mov edx, dword [ebp - 0x710]
cmp edx, dword [ebp - 0x544]
jne 0x1004d10d
mov eax, dword [ebp - 0x70c]
cmp eax, dword [ebp - 0x540]
je 0x1004d119
mov dword [ebp - 0x220], 0
jmp 0x1004d123
mov dword [ebp - 0x220], 1
mov ecx, dword [ebp - 0x218]
sub ecx, dword [ebp - 0x21c]
cmp ecx, dword [ebp - 0x220]
jle 0x1004d144
call dword [sym.imp.USER32.dll_GetDoubleClickTime]
mov dword [0x100d3174], eax
jmp 0x1004d1bc
movzx edx, word [ebp - 0x28]
test edx, edx
je 0x1004d1bc
movzx eax, word [ebp - 0x20]
cdq
mov ecx, dword [0x100d3124]
push ecx
mov ecx, dword [0x100d3120]
push ecx
push edx
push eax
call fcn.100a25b0
mov ecx, eax
movzx eax, word [ebp - 0x20]
cdq
sub eax, ecx
mov word [ebp - 0x20], ax
movsx eax, word [ebp - 0x34]
cdq
sub eax, 0xd2521fd8
sbb edx, 0x39ebc
mov dword [0x100d31a0], eax
mov dword [0x100d31a4], edx
xor edx, edx
mov dword [ebp - 0x80], 0xca1b1795
mov dword [ebp - 0x7c], edx
movsx eax, byte [0x100d3026]
add eax, dword [0x100d3140]
mov byte [0x100d3026], al
movsx ecx, word [ebp - 0x30]
sub ecx, 0x87e8
mov byte [0x100d3027], cl
movsx edx, word [ebp - 0x30]
test edx, edx
jne 0x1004d1d0
mov dword [ebp - 0x224], 1
jmp 0x1004d1da
mov dword [ebp - 0x224], 0
movsx eax, byte [ebp - 0x15]
cmp dword [ebp - 0x224], eax
jg 0x1004d1f2
mov dword [ebp - 0x22c], 1
jmp 0x1004d1fc
mov dword [ebp - 0x22c], 0
mov ecx, dword [ebp - 0x80]
or ecx, dword [ebp - 0x7c]
jne 0x1004d210
mov dword [ebp - 0x228], 1
jmp 0x1004d21a
mov dword [ebp - 0x228], 0
cmp dword [ebp - 0x228], 0x42
jne 0x1004d22f
mov dword [ebp - 0x230], 1
jmp 0x1004d239
mov dword [ebp - 0x230], 0
mov edx, dword [ebp - 0x22c]
cmp edx, dword [ebp - 0x230]
jl 0x1004d2ce
jmp 0x1004d276
jmp 0x1004d292
jmp 0x1004d299
jmp 0x1004d2cc
jmp 0x1004d32f
mov al, byte [ebp - 0x68]
mov byte [0x100d304f], al
mov dword [0x100d3144], 0x774a8b2c
movzx ecx, word [0x100d315c]
movzx edx, byte [0x100d304f]
add ecx, edx
mov word [0x100d315c], cx
mov eax, dword [0x100d3174]
sub eax, 0xec1f
mov byte [ebp - 0x15], al
mov ecx, dword [0x100d313c]
push ecx
mov edx, dword [0x100d3138]
push edx
mov eax, dword [0x100d316c]
push eax
mov ecx, dword [0x100d3168]
push ecx
call fcn.100a25b0
mov dword [0x100d3168], eax
mov dword [0x100d316c], edx
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov dword [ebp - 4], 4
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x38]
movzx eax, word [ebp - 0x20]
cdq
mov dword [ebp - 0x718], ecx
mov dword [ebp - 0x714], esi
mov dword [ebp - 0x720], eax
mov dword [ebp - 0x71c], edx
mov edx, dword [ebp - 0x714]
cmp edx, dword [ebp - 0x71c]
jl 0x1004d394
jg 0x1004d388
mov eax, dword [ebp - 0x718]
cmp eax, dword [ebp - 0x720]
jbe 0x1004d394
mov dword [ebp - 0x234], 1
jmp 0x1004d39e
mov dword [ebp - 0x234], 0
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0x728], ecx
mov dword [ebp - 0x724], edx
cmp dword [ebp - 0x724], 0
jl 0x1004d3d0
jg 0x1004d3c4
cmp dword [ebp - 0x728], 0x2a
jbe 0x1004d3d0
mov dword [ebp - 0x238], 1
jmp 0x1004d3da
mov dword [ebp - 0x238], 0
mov eax, dword [ebp - 0x234]
cmp eax, dword [ebp - 0x238]
jg 0x1004d7d0
movsx ecx, word [ebp - 0x24]
push ecx
call dword [sym.imp.KERNEL32.dll_SetLastError]
movzx edx, byte [ebp - 0x18]
test edx, edx
jne 0x1004d40b
mov dword [ebp - 0x23c], 1
jmp 0x1004d415
mov dword [ebp - 0x23c], 0
mov eax, dword [0x100d3140]
cmp eax, dword [ebp - 0x23c]
ja 0x1004d42e
mov dword [ebp - 0x240], 1
jmp 0x1004d438
mov dword [ebp - 0x240], 0
mov ecx, dword [ebp - 0x240]
not ecx
test ecx, ecx
je 0x1004d56e
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x730], edx
mov dword [ebp - 0x72c], eax
mov ecx, dword [ebp - 0x730]
or ecx, dword [ebp - 0x72c]
jne 0x1004d474
mov dword [ebp - 0x244], 1
jmp 0x1004d47e
mov dword [ebp - 0x244], 0
movsx eax, byte [0x100d304e]
not eax
imul eax, dword [ebp - 0x244]
cdq
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
movsx edx, byte [ebp - 0x15]
imul eax, edx, 0xcade
mov dword [0x100d311c], eax
mov ecx, dword [0x100d31a8]
mov edx, dword [0x100d31ac]
mov dword [ebp - 0x738], ecx
mov dword [ebp - 0x734], edx
mov eax, dword [ebp - 0x738]
or eax, dword [ebp - 0x734]
jne 0x1004d4d6
mov dword [ebp - 0x248], 1
jmp 0x1004d4e0
mov dword [ebp - 0x248], 0
cmp dword [0x100d31b4], 0
jne 0x1004d4f5
mov dword [ebp - 0x24c], 1
jmp 0x1004d4ff
mov dword [ebp - 0x24c], 0
movzx eax, byte [ebp - 0x12]
movsx ecx, word [0x100d312c]
imul ecx, dword [ebp - 0x248]
not ecx
imul eax, ecx
cdq
mov ebx, eax
movzx eax, byte [ebp - 0x12]
add eax, dword [ebp - 0x24c]
cdq
mov esi, eax
movsx eax, byte [ebp - 0x16]
cdq
push edx
push eax
mov edx, dword [0x100d313c]
push edx
mov eax, dword [0x100d3138]
push eax
call fcn.100a25b0
add esi, eax
add ebx, esi
mov byte [0x100d304e], bl
movzx ecx, byte [ebp - 0x17]
sub ecx, 0x59
mov byte [0x100d3026], cl
movsx edx, byte [ebp - 0x16]
imul eax, edx, 0x48
cdq
mov dword [0x100d3188], eax
mov dword [0x100d318c], edx
jmp 0x1004d7ce
cmp dword [0x100d3134], 0
je 0x1004d619
movzx eax, word [ebp - 0x1c]
sub eax, dword [0x100d3158]
movzx ecx, word [ebp - 0x1c]
add ecx, eax
mov word [ebp - 0x1c], cx
mov eax, dword [0x100d3190]
add eax, 0x6c14d298
cdq
mov dword [0x100d31a0], eax
mov dword [0x100d31a4], edx
movsx edx, word [0x100d3128]
movsx eax, byte [ebp - 0x15]
add edx, eax
mov ecx, dword [0x100d3140]
imul ecx, edx
not ecx
mov ebx, ecx
movzx eax, word [ebp - 0x1c]
cdq
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x38]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov edx, 0xc4
sub edx, eax
not edx
add ebx, edx
mov byte [0x100d3063], bl
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0x9b8], ecx
mov edx, 1
imul ecx, edx, 0x6e37
mov byte [ecx + 0x1023abe0], al
mov eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov cl, 8
call fcn.100a25f0
mov word [0x100d31b0], ax
jmp 0x1004d7ce
mov edx, dword [0x100d3180]
mov eax, dword [0x100d3184]
mov dword [ebp - 0x740], edx
mov dword [ebp - 0x73c], eax
mov ecx, dword [ebp - 0x740]
or ecx, dword [ebp - 0x73c]
je 0x1004d6d3
movsx edx, word [0x100d3130]
sub edx, 0x60dee32
mov dword [0x100d31b4], edx
movsx eax, word [0x100d312c]
sar eax, 2
mov dword [0x100d3170], eax
mov ecx, dword [0x100d3198]
mov edx, dword [0x100d319c]
mov dword [ebp - 0x9bc], edx
add ecx, 0xd6
mov word [0x100d3128], cx
movsx eax, byte [ebp - 0x15]
sub eax, dword [0x100d3170]
movsx ecx, byte [ebp - 0x15]
add ecx, eax
mov byte [ebp - 0x15], cl
movsx edx, byte [ebp - 0x15]
add edx, 0x33998479
mov eax, dword [0x100d311c]
and eax, edx
mov dword [0x100d311c], eax
mov ecx, dword [0x100d3140]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x9c0], eax
add ecx, edx
mov edx, dword [0x100d3140]
sub edx, ecx
mov dword [0x100d3140], edx
jmp 0x1004d7ce
movsx eax, word [0x100d31b0]
test eax, eax
je 0x1004d7ce
mov eax, dword [0x100d3190]
cdq
mov ecx, eax
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x9c4], eax
add ecx, edx
movsx eax, word [ebp - 0x24]
and eax, 0x9a
cdq
and ecx, eax
not ecx
mov word [ebp - 0x30], cx
mov ecx, dword [ebp - 0x4c]
or ecx, dword [ebp - 0x48]
je 0x1004d726
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x45c], edx
mov dword [ebp - 0x458], eax
jmp 0x1004d737
movsx eax, byte [ebp - 0x16]
cdq
mov dword [ebp - 0x45c], eax
mov dword [ebp - 0x458], edx
mov cx, word [ebp - 0x45c]
mov word [0x100d31b0], cx
mov edx, dword [0x100d3174]
shl edx, 6
xor eax, eax
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x60], eax
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0x748], ecx
mov dword [ebp - 0x744], edx
mov eax, dword [ebp - 0x748]
or eax, dword [ebp - 0x744]
jne 0x1004d782
mov dword [ebp - 0x250], 1
jmp 0x1004d78c
mov dword [ebp - 0x250], 0
movzx ecx, word [ebp - 0x1c]
movzx edx, word [ebp - 0x1c]
imul edx, dword [ebp - 0x250]
not edx
lea eax, [ecx + edx - 0x1982e8b5]
mov dword [0x100d3190], eax
mov eax, dword [0x100d3190]
cdq
mov ecx, eax
sub ecx, dword [0x100d3168]
mov eax, dword [0x100d3190]
cdq
sub eax, ecx
mov dword [0x100d3190], eax
mov dword [0x100d31b4], 0x909cf399
jmp 0x1004d829
mov edx, dword [0x100d3150]
mov eax, dword [0x100d3154]
mov dword [ebp - 0x5c], edx
mov dword [ebp - 0x58], eax
movsx ecx, word [0x100d3128]
movzx edx, word [0x100d3178]
imul ecx, edx
movsx eax, word [0x100d3128]
imul eax, ecx
mov word [0x100d3128], ax
movzx ecx, byte [0x100d3027]
imul ecx, dword [0x100d31b4]
mov edx, dword [0x100d31b4]
sub edx, ecx
mov dword [0x100d31b4], edx
mov eax, 2
mov word [0x100d315c], ax
jmp 0x1004d88f
mov dword [ebp - 4], 4
jmp 0x1004d89f
jmp 0x1004d9de
mov dword [ebp - 4], 0xffffffff
jmp 0x1004d9ee
mov eax, dword [ebp - 0x25c]
add eax, dword [ebp - 0x51c]
mov ecx, dword [ebp - 0x25c]
or ecx, 0x1ef
cmp eax, ecx
je 0x10051c46
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x1004da47
mov dword [ebp - 0x520], 1
mov edx, dword [ebp - 0x520]
push edx
mov eax, dword [ebp - 0x260]
push eax
call dword [sym.imp.USER32.dll_GetSystemMenu]
mov dword [ebp - 0x9cc], eax
movzx ecx, word [ebp - 0x20]
imul eax, ecx, 0x5db13ed7
cdq
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x9d0], eax
xor edx, 0xd91e458e
mov dword [0x100d3140], edx
movzx ecx, byte [ebp - 0x17]
add ecx, dword [0x100d3140]
mov byte [ebp - 0x17], cl
movzx edx, word [0x100d315c]
shl edx, 2
mov byte [ebp - 0x12], dl
movsx eax, word [0x100d312c]
add eax, 0xc6
mov ecx, dword [0x100d3190]
add ecx, eax
mov dword [0x100d3190], ecx
movzx edx, word [ebp - 0x84]
cmp edx, 0x43f
jne 0x1004dc46
mov eax, dword [0x100d3190]
add eax, dword [0x100d3170]
not eax
movzx ecx, word [ebp - 0x20]
imul eax, ecx
mov byte [ebp - 0x12], al
mov edx, dword [0x100d3c78]
xor eax, eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], eax
movzx eax, byte [0x100d3063]
sar eax, 3
cdq
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
movzx ecx, byte [ebp - 0x18]
imul eax, ecx, 0x72
cdq
mov dword [0x100d31a8], eax
mov dword [0x100d31ac], edx
push 0
push 0xd22f
mov edx, dword [ebp - 0x48]
push edx
mov eax, dword [ebp - 0x4c]
push eax
call fcn.100a25b0
mov ecx, eax
movzx eax, byte [ebp - 0x11]
cdq
add eax, ecx
mov byte [ebp - 0x11], al
movzx edx, word [ebp - 0x28]
sub edx, 0xad
mov dword [0x100d3140], edx
mov ax, word [ebp - 0x20]
add ax, 1
mov word [ebp - 0x20], ax
movzx eax, byte [0x100d3063]
or eax, dword [0x100d311c]
cdq
mov ecx, eax
mov esi, edx
movzx eax, byte [0x100d3027]
cdq
xor eax, dword [0x100d31a0]
xor edx, dword [0x100d31a4]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x760], ecx
mov dword [ebp - 0x75c], esi
mov edx, dword [ebp - 0x760]
or edx, dword [ebp - 0x75c]
jne 0x1004db94
xor eax, eax
mov dword [ebp - 0x464], 1
mov dword [ebp - 0x460], eax
jmp 0x1004db9f
xorps xmm0, xmm0
movlpd qword [ebp - 0x464], xmm0
mov ecx, dword [0x100d3198]
mov edx, dword [0x100d319c]
not ecx
not edx
mov eax, dword [ebp - 0x38]
sub ecx, dword [ebp - 0x3c]
sbb edx, eax
mov eax, dword [0x100d3198]
mov esi, dword [0x100d319c]
push edx
push ecx
push esi
push eax
call fcn.100a25b0
not eax
not edx
add eax, dword [ebp - 0x464]
adc edx, dword [ebp - 0x460]
mov dword [ebp - 0x768], eax
mov dword [ebp - 0x764], edx
mov ecx, dword [ebp - 0x768]
or ecx, dword [ebp - 0x764]
jne 0x1004dc01
mov dword [ebp - 0x264], 1
jmp 0x1004dc0b
mov dword [ebp - 0x264], 0
mov edx, dword [ebp - 0x264]
mov dword [0x100d311c], edx
mov eax, dword [0x100d3120]
sub eax, 0xac19
mov dword [0x100d3174], eax
movzx ecx, byte [ebp - 0x18]
sub ecx, dword [0x100d3190]
movzx edx, byte [ebp - 0x18]
sub edx, ecx
mov byte [ebp - 0x18], dl
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
movzx eax, word [ebp - 0x1c]
movzx ecx, byte [0x100d3027]
cmp eax, ecx
jge 0x1004dc61
mov dword [ebp - 0x268], 1
jmp 0x1004dc6b
mov dword [ebp - 0x268], 0
movzx edx, word [ebp - 0x1c]
cmp edx, 0x17
jge 0x1004dc80
mov dword [ebp - 0x26c], 1
jmp 0x1004dc8a
mov dword [ebp - 0x26c], 0
mov eax, dword [ebp - 0x268]
cmp eax, dword [ebp - 0x26c]
jge 0x1004dd03
movzx eax, word [ebp - 0x20]
cdq
mov ecx, dword [0x100d3168]
sub ecx, eax
mov eax, dword [0x100d316c]
sbb eax, edx
mov dword [0x100d3168], ecx
mov dword [0x100d316c], eax
mov ecx, dword [ebp - 0x80]
sub ecx, 0x58eb93ae
mov edx, dword [ebp - 0x7c]
sbb edx, 0xf1444
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x38], edx
mov eax, 0x5ec3
mov word [0x100d3130], ax
movzx ecx, word [ebp - 0x1c]
mov edx, dword [0x100d3158]
sub edx, ecx
mov eax, dword [0x100d3158]
sub eax, edx
mov dword [0x100d3158], eax
xor ecx, ecx
mov dword [ebp - 0x3c], 2
mov dword [ebp - 0x38], ecx
jmp 0x1004ddc7
movsx edx, byte [0x100d304e]
sub edx, 0xd8d0424
jne 0x1004ddc7
mov byte [0x100d304e], 0xef
mov al, byte [ebp - 0x16]
add al, 1
mov byte [ebp - 0x16], al
movzx ecx, byte [0x100d3027]
test ecx, ecx
jne 0x1004dd3c
mov dword [ebp - 0x270], 1
jmp 0x1004dd46
mov dword [ebp - 0x270], 0
movsx edx, byte [0x100d304e]
movsx eax, word [ebp - 0x30]
add edx, eax
movsx ecx, byte [ebp - 0x15]
not ecx
sub ecx, dword [ebp - 0x270]
sub edx, ecx
movzx eax, byte [ebp - 0x11]
mov ecx, dword [0x100d311c]
sub ecx, eax
movsx eax, byte [ebp - 0x15]
imul eax, eax, 0xffffffa5
add ecx, eax
sub edx, ecx
mov word [ebp - 0x1c], dx
mov ecx, 8
shl ecx, 0
mov edx, dword [0x100d3168]
add edx, dword [ecx + 0x101bcef0]
mov eax, dword [0x100d316c]
adc eax, dword [ecx + 0x101bcef4]
mov dword [0x100d3168], edx
mov dword [0x100d316c], eax
movzx ecx, byte [ebp - 0x18]
imul eax, ecx, 0xdc
cdq
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
movsx edx, word [ebp - 0x30]
imul eax, edx, 0xb99d
mov word [0x100d3130], ax
movzx ecx, word [ebp - 0x84]
cmp ecx, 0x440
jne 0x1004dfe6
movsx edx, word [0x100d3130]
sar edx, 3
mov byte [ebp - 0x17], dl
mov ax, word [ebp - 0x4c]
mov word [ebp - 0x34], ax
mov byte [ebp - 0x12], 0x7a
mov ecx, dword [0x100d3148]
add ecx, 0xa8449c62
mov edx, dword [0x100d314c]
adc edx, 0xc20d6
mov eax, dword [0x100d3180]
mov esi, dword [0x100d3184]
add eax, ecx
adc esi, edx
mov dword [0x100d3180], eax
mov dword [0x100d3184], esi
mov ecx, 0xffffde04
mov word [ebp - 0x30], cx
movzx edx, word [ebp - 0x28]
imul eax, edx, 0xe824
mov byte [ebp - 0x13], al
movsx cx, byte [ebp - 0x15]
movzx edx, cx
push edx
push 0
push 0xd2
push 0x33
call fcn.1005a510
add esp, 0x10
mov byte [ebp - 0x14], al
movsx eax, byte [ebp - 0x14]
test eax, eax
jle 0x1004df64
mov dword [ebp - 4], 8
movzx ecx, word [ebp - 0x1c]
imul edx, ecx, 0xdc
mov dword [0x100d3140], edx
xor eax, eax
mov dword [ebp - 0x44], 0x57ee22f9
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x68]
add ecx, 1
mov dword [ebp - 0x68], ecx
mov dl, byte [ebp - 0x34]
mov byte [ebp - 0x12], dl
mov eax, 0x8e5d8
mov dword [0x100d3168], 0x853a069
mov dword [0x100d316c], eax
movzx eax, byte [ebp - 0x17]
cdq
mov ecx, dword [0x100d3160]
sub ecx, eax
mov eax, dword [0x100d3164]
sbb eax, edx
add ecx, dword [0x100d3160]
adc eax, dword [0x100d3164]
mov dword [0x100d3160], ecx
mov dword [0x100d3164], eax
jmp 0x1004df52
mov dword [ebp - 4], 0xffffffff
jmp 0x1004df62
jmp 0x1004dfd9
movsx eax, byte [ebp - 0x15]
cdq
push 0x48e7
push 0x69afe997
push edx
push eax
call fcn.100a25b0
mov ecx, dword [0x100d3160]
sub ecx, eax
mov eax, dword [0x100d3164]
sbb eax, edx
mov dword [0x100d3160], ecx
mov dword [0x100d3164], eax
mov ecx, dword [0x100d3144]
mov edx, 1
imul eax, edx, 0x2d
mov byte [eax + 0x10196a18], cl
mov ecx, dword [0x100d3180]
mov edx, dword [0x100d3184]
mov dword [ebp - 0x9d8], edx
sub ecx, 0xf34a
mov byte [0x100d304e], cl
movsx eax, word [0x100d312c]
movsx ecx, byte [ebp - 0x13]
add eax, ecx
mov word [0x100d312c], ax
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov edx, dword [0x100d3138]
or edx, dword [0x100d313c]
je 0x1004e060
movzx eax, byte [ebp - 0x11]
mov ecx, dword [0x100d3158]
not ecx
add eax, ecx
mov byte [ebp - 0x18], al
imul eax, dword [0x100d3134], 0xc586
cdq
mov dword [0x100d31a8], eax
mov dword [0x100d31ac], edx
mov edx, dword [0x100d3c78]
xor eax, eax
mov dword [0x100d3120], edx
mov dword [0x100d3124], eax
movzx eax, byte [ebp - 0x11]
shl eax, 2
cdq
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], edx
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
push 0
push 0xaa
push edx
push ecx
call fcn.100a25b0
mov dword [0x100d3150], eax
mov dword [0x100d3154], edx
jmp 0x1004e12c
mov eax, dword [0x100d3198]
mov ecx, dword [0x100d319c]
not eax
not ecx
mov dword [ebp - 0x770], eax
mov dword [ebp - 0x76c], ecx
cmp dword [ebp - 0x770], 0x38b6
jne 0x1004e094
cmp dword [ebp - 0x76c], 0
je 0x1004e12c
mov edx, dword [ebp - 0x80]
or edx, dword [ebp - 0x7c]
je 0x1004e0af
movzx eax, byte [ebp - 0x17]
cdq
mov dword [ebp - 0x46c], eax
mov dword [ebp - 0x468], edx
jmp 0x1004e0c6
mov eax, dword [0x100d3148]
mov ecx, dword [0x100d314c]
mov dword [ebp - 0x46c], eax
mov dword [ebp - 0x468], ecx
mov dx, word [ebp - 0x46c]
mov word [0x100d312c], dx
movzx eax, byte [ebp - 0x11]
imul ecx, eax, 0x4268
mov word [ebp - 0x24], cx
mov edx, dword [0x100d3190]
mov eax, 2
imul ecx, eax, 0x4d
mov word [ecx + 0x10339248], dx
mov dword [0x100d3174], 0xffe23e6c
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x58]
sub edx, 0xd2
sbb eax, 0
mov ecx, dword [0x100d3160]
sub ecx, edx
mov edx, dword [0x100d3164]
sbb edx, eax
mov dword [0x100d3160], ecx
mov dword [0x100d3164], edx
movzx eax, word [ebp - 0x84]
cmp eax, 0x818
jne 0x1004e50f
mov dword [0x100d31b4], 0x77a210e5
mov eax, dword [ebp - 0x80]
mov edx, dword [ebp - 0x7c]
mov cl, 3
call fcn.100a25f0
mov byte [ebp - 0x11], al
movzx eax, word [0x100d3178]
cdq
mov ecx, dword [ebp - 0x7c]
push ecx
mov ecx, dword [ebp - 0x80]
push ecx
push edx
push eax
call fcn.100a25b0
mov dword [ebp - 0x778], eax
mov dword [ebp - 0x774], edx
mov edx, dword [ebp - 0x778]
or edx, dword [ebp - 0x774]
jne 0x1004e19d
xor eax, eax
mov dword [ebp - 0x47c], 1
mov dword [ebp - 0x478], eax
jmp 0x1004e1a8
xorps xmm0, xmm0
movlpd qword [ebp - 0x47c], xmm0
movsx ecx, word [0x100d312c]
test ecx, ecx
jne 0x1004e1c7
xor edx, edx
mov dword [ebp - 0x474], 1
mov dword [ebp - 0x470], edx
jmp 0x1004e1d2
xorps xmm0, xmm0
movlpd qword [ebp - 0x474], xmm0
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x38]
add ecx, dword [ebp - 0x474]
adc esi, dword [ebp - 0x470]
add ecx, dword [ebp - 0x47c]
adc esi, dword [ebp - 0x478]
movsx eax, byte [ebp - 0x14]
movsx edx, word [ebp - 0x2c]
imul eax, edx
movzx edx, word [ebp - 0x28]
mov edi, dword [0x100d3190]
sub edi, edx
and eax, edi
cdq
add ecx, eax
adc esi, edx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], esi
mov eax, dword [0x100d3138]
and eax, dword [0x100d3120]
mov ecx, dword [0x100d313c]
and ecx, dword [0x100d3124]
add eax, dword [0x100d3138]
adc ecx, dword [0x100d313c]
mov dword [0x100d3138], eax
mov dword [0x100d313c], ecx
movzx edx, word [ebp - 0x20]
test edx, edx
jne 0x1004e256
mov dword [ebp - 0x274], 1
jmp 0x1004e260
mov dword [ebp - 0x274], 0
movsx eax, word [ebp - 0x34]
add eax, dword [ebp - 0x274]
mov ecx, dword [0x100d31b4]
add ecx, 0x728d7cb
sub eax, ecx
not eax
movzx edx, word [ebp - 0x28]
movzx ecx, word [ebp - 0x28]
movzx esi, byte [0x100d304f]
not esi
add ecx, esi
add edx, ecx
sub eax, edx
not eax
mov word [ebp - 0x24], ax
mov dword [0x100d311c], 2
mov edx, dword [0x100d3170]
sub edx, dword [0x100d3174]
add edx, dword [0x100d3170]
mov dword [0x100d3170], edx
mov eax, dword [ebp - 0x70]
add eax, 0x6dc8b458
mov ecx, dword [ebp - 0x6c]
adc ecx, 0x9eb03
mov dword [0x100d3150], eax
mov dword [0x100d3154], ecx
mov edx, dword [0x100d3134]
sub edx, 1
mov dword [0x100d3134], edx
movzx eax, byte [0x100d304f]
cdq
mov ecx, eax
mov edx, dword [0x100d3198]
mov eax, dword [0x100d319c]
mov dword [ebp - 0x9dc], eax
add ecx, edx
movzx eax, byte [0x100d304f]
cdq
and eax, ecx
mov byte [0x100d304f], al
movzx ecx, byte [ebp - 0x17]
sub ecx, 0x98
mov edx, dword [0x100d3140]
sub edx, ecx
mov dword [0x100d3140], edx
movsx eax, word [ebp - 0x2c]
imul eax, eax, 0x6031327f
cdq
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
mov ecx, dword [0x100d311c]
mov dword [ebp - 0xf8], ecx
cmp dword [ebp - 0xf8], 0
je 0x1004e36d
cmp dword [ebp - 0xf8], 1
je 0x1004e3f1
cmp dword [ebp - 0xf8], 2
je 0x1004e485
jmp 0x1004e505
movzx edx, byte [ebp - 0x18]
imul eax, edx, 0x7b974431
cdq
mov dword [0x100d3168], eax
mov dword [0x100d316c], edx
mov eax, 8
imul ecx, eax, 0xd
movzx eax, word [0x100d315c]
cdq
sub eax, dword [ecx + 0x10337458]
mov word [0x100d315c], ax
movzx eax, byte [ebp - 0x11]
cdq
add eax, dword [ebp - 0x70]
mov byte [ebp - 0x11], al
mov edx, dword [0x100d31a0]
mov eax, dword [0x100d31a4]
sub edx, 0xae
sbb eax, 0
mov ecx, dword [0x100d31a0]
mov esi, dword [0x100d31a4]
push eax
push edx
push esi
push ecx
call fcn.100a25b0
mov dword [0x100d31a0], eax
mov dword [0x100d31a4], edx
mov eax, dword [0x100d3190]
cdq
add eax, dword [ebp - 0x80]
not eax
mov byte [ebp - 0x12], al
jmp 0x1004e505
movzx eax, byte [0x100d304f]
cdq
sub eax, 0x9849fd0f
sbb edx, 0x3871f
mov ecx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x40]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], esi
movzx edx, byte [0x100d3027]
imul eax, edx, 0x8cd1a89b
mov byte [0x100d3063], al
mov ecx, dword [0x100d3190]
movsx edx, word [0x100d312c]
lea eax, [edx + ecx + 0xc2e4]
mov word [0x100d312c], ax
mov ecx, dword [0x100d3188]
mov dword [0x100d3190], ecx
mov edx, dword [0x100d3198]
mov eax, dword [0x100d319c]
push 0
push 0xe15
push eax
push edx
call fcn.100a25b0
mov dword [0x100d3170], eax
mov ecx, dword [0x100d3170]
sub ecx, 0xe15c785
movzx edx, word [ebp - 0x28]
and edx, ecx
mov word [ebp - 0x28], dx
jmp 0x1004e505
movsx eax, byte [ebp - 0x13]
add eax, 0xc2a7
cdq
mov ecx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x40]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], esi
movzx edx, byte [ebp - 0x17]
not edx
movsx eax, byte [0x100d3026]
xor edx, eax
mov dword [0x100d3170], edx
mov ecx, dword [ebp - 0x40]
mov edx, dword [0x100d3160]
sub edx, dword [ebp - 0x44]
mov eax, dword [0x100d3164]
sbb eax, ecx
add edx, dword [0x100d3160]
adc eax, dword [0x100d3164]
mov dword [0x100d3160], edx
mov dword [0x100d3164], eax
mov ecx, dword [0x100d3170]
sub ecx, 0xc804b53a
movzx eax, byte [0x100d304f]
cdq
add eax, ecx
mov byte [0x100d304f], al
xor edx, edx
mov dword [ebp - 0x3c], 1
mov dword [ebp - 0x38], edx
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
movsx eax, word [0x100d3130]
imul ecx, eax, 0x746125e8
mov byte [ebp - 0x13], cl
mov eax, dword [ebp - 0x68]
cdq
mov ecx, dword [0x100d3180]
mov esi, dword [0x100d3184]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x60], esi
mov edx, dword [0x100d31b4]
xor eax, eax
add edx, 0xa8365c8c
adc eax, 0xf6e50
mov dword [0x100d3148], edx
mov dword [0x100d314c], eax
mov ecx, 0x8661
mov word [ebp - 0x20], cx
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
push 0
push 0xbd
push eax
push edx
call fcn.100a25b0
mov ecx, dword [0x100d3174]
add ecx, eax
mov dword [0x100d3174], ecx
mov edx, dword [ebp - 0xc8]
or edx, dword [ebp - 0xc8]
mov eax, dword [ebp - 0xc4]
and eax, 0x2eb
imul edx, eax
mov ecx, dword [ebp - 0xc4]
xor ecx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0xc8]
add eax, ecx
cmp edx, eax
je 0x10051c46
mov dword [0x100d3140], 3
mov ecx, dword [0x100d3c78]
xor edx, edx
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x60], edx
mov eax, dword [0x100d311c]
cdq
mov ecx, dword [0x100d3150]
sub ecx, eax
mov eax, dword [0x100d3154]
sbb eax, edx
push eax
push ecx
mov ecx, dword [0x100d3154]
push ecx
mov edx, dword [0x100d3150]
push edx
call fcn.100a25b0
mov dword [0x100d3150], eax
mov dword [0x100d3154], edx
mov ax, word [0x100d3c78]
mov word [ebp - 0x20], ax
movsx ecx, byte [0x100d3026]
movzx edx, byte [0x100d304f]
and ecx, edx
imul ecx, dword [0x100d311c]
movsx eax, byte [0x100d3026]
sub ecx, eax
jne 0x1004e645
xor ecx, ecx
mov dword [ebp - 0x484], 1
mov dword [ebp - 0x480], ecx
jmp 0x1004e650
xorps xmm0, xmm0
movlpd qword [ebp - 0x484], xmm0
mov edx, dword [ebp - 0x484]
mov eax, dword [ebp - 0x480]
mov dword [0x100d3168], edx
mov dword [0x100d316c], eax
movzx ecx, byte [ebp - 0x12]
mov edx, 4
imul eax, edx, 0x23f2
mov dword [eax + 0x100d3d00], ecx
mov ecx, dword [0x100d3140]
mov dword [ebp - 0x278], ecx
cmp dword [ebp - 0x278], 3
ja case.default.0x1004e69b
mov edx, dword [ebp - 0x278]
jmp dword [edx*4 + 0x10051d8c]
mov al, byte [ebp - 0x17]
sub al, 1
mov byte [ebp - 0x17], al
push 0
push 0xc76a2ca2
mov ecx, dword [ebp - 0x7c]
push ecx
mov edx, dword [ebp - 0x80]
push edx
call fcn.100a25b0
push edx
push eax
mov eax, dword [ebp - 0x48]
push eax
mov ecx, dword [ebp - 0x4c]
push ecx
call fcn.100a25b0
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], edx
movzx edx, byte [ebp - 0x11]
test edx, edx
je 0x1004e6ea
movsx eax, byte [0x100d304e]
mov dword [ebp - 0x27c], eax
jmp 0x1004e6f4
movsx ecx, word [ebp - 0x2c]
mov dword [ebp - 0x27c], ecx
mov dx, word [ebp - 0x27c]
mov word [ebp - 0x20], dx
movsx eax, byte [ebp - 0x14]
test eax, eax
jne 0x1004e71b
xor ecx, ecx
mov dword [ebp - 0x48c], 1
mov dword [ebp - 0x488], ecx
jmp 0x1004e726
xorps xmm0, xmm0
movlpd qword [ebp - 0x48c], xmm0
movsx eax, word [ebp - 0x2c]
cdq
mov ecx, dword [ebp - 0x80]
not ecx
mov esi, dword [ebp - 0x7c]
not esi
add eax, ecx
adc edx, esi
mov dword [ebp - 0x780], eax
mov dword [ebp - 0x77c], edx
mov edx, dword [ebp - 0x780]
or edx, dword [ebp - 0x77c]
jne 0x1004e767
xor eax, eax
mov dword [ebp - 0x494], 1
mov dword [ebp - 0x490], eax
jmp 0x1004e772
xorps xmm0, xmm0
movlpd qword [ebp - 0x494], xmm0
mov ecx, dword [0x100d3198]
mov esi, dword [0x100d319c]
sub ecx, dword [ebp - 0x48c]
sbb esi, dword [ebp - 0x488]
movsx eax, word [ebp - 0x34]
cdq
sub eax, 0x627e422
sbb edx, 0x9419c
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov esi, eax
mov edx, dword [0x100d3124]
push edx
mov eax, dword [0x100d3120]
push eax
mov ecx, dword [ebp - 0x490]
push ecx
mov edx, dword [ebp - 0x494]
push edx
call fcn.100a25b0
sub esi, eax
mov dword [0x100d3144], esi
mov eax, 4
imul ecx, eax, 0x29
movzx edx, byte [0x100d3063]
add edx, dword [ecx + 0x10339700]
mov byte [0x100d3063], dl
mov eax, dword [0x100d31a0]
mov ecx, dword [0x100d31a4]
mov dword [ebp - 0x788], eax
mov dword [ebp - 0x784], ecx
mov edx, dword [ebp - 0x788]
or edx, dword [ebp - 0x784]
je 0x1004e819
movzx eax, byte [ebp - 0x12]
mov dword [ebp - 0x280], eax
jmp 0x1004e823
movsx ecx, byte [ebp - 0x14]
mov dword [ebp - 0x280], ecx
mov dl, byte [ebp - 0x280]
mov byte [ebp - 0x11], dl
jmp case.default.0x1004e69b
movsx eax, byte [ebp - 0x15]
test eax, eax
je 0x1004e848
movzx ecx, word [0x100d315c]
mov dword [ebp - 0x284], ecx
jmp 0x1004e854
mov edx, dword [0x100d31b4]
mov dword [ebp - 0x284], edx
mov ax, word [ebp - 0x284]
mov word [0x100d3128], ax
movzx ecx, word [ebp - 0x28]
movsx edx, word [ebp - 0x34]
add ecx, edx
movzx eax, word [ebp - 0x28]
sub eax, ecx
mov word [ebp - 0x28], ax
mov dword [0x100d311c], 0x63
cmp dword [0x100d3174], 0
jne 0x1004e894
mov dword [ebp - 0x288], 1
jmp 0x1004e89e
mov dword [ebp - 0x288], 0
movzx eax, byte [0x100d3063]
cdq
mov ecx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
add ecx, eax
adc esi, edx
movsx eax, byte [ebp - 0x15]
add eax, dword [ebp - 0x288]
cdq
add ecx, eax
adc esi, edx
mov dword [ebp - 0x790], ecx
mov dword [ebp - 0x78c], esi
mov edx, dword [ebp - 0x790]
or edx, dword [ebp - 0x78c]
jne 0x1004e8e2
mov byte [ebp - 0x86], 1
jmp 0x1004e8e9
mov byte [ebp - 0x86], 0
mov al, byte [ebp - 0x86]
mov byte [ebp - 0x14], al
movzx eax, word [ebp - 0x28]
cdq
add eax, 0x3a85986e
adc edx, 0xe5f4
mov dword [0x100d3188], eax
mov dword [0x100d318c], edx
jmp case.default.0x1004e69b
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x798], ecx
mov dword [ebp - 0x794], edx
mov eax, dword [ebp - 0x798]
or eax, dword [ebp - 0x794]
jne 0x1004e93e
mov dword [ebp - 0x28c], 1
jmp 0x1004e948
mov dword [ebp - 0x28c], 0
mov ecx, dword [0x100d3170]
xor edx, edx
add ecx, dword [0x100d3120]
adc edx, dword [0x100d3124]
mov dword [ebp - 0x7a0], ecx
mov dword [ebp - 0x79c], edx
mov eax, dword [ebp - 0x7a0]
or eax, dword [ebp - 0x79c]
jne 0x1004e982
mov dword [ebp - 0x290], 1
jmp 0x1004e98c
mov dword [ebp - 0x290], 0
movsx ecx, word [ebp - 0x34]
mov eax, ecx
imul eax, dword [ebp - 0x28c]
add eax, dword [ebp - 0x290]
cdq
mov edx, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x9e0], ecx
add edx, eax
mov word [ebp - 0x1c], dx
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x58]
push 0
push 0xdcd5
push eax
push edx
call fcn.100a25b0
mov byte [ebp - 0x14], al
mov byte [0x100d304f], 0xe7
movsx ecx, word [ebp - 0x2c]
imul eax, ecx, 0xee19
movsx edx, byte [0x100d304e]
sub eax, edx
cdq
mov ecx, eax
mov esi, edx
movsx edx, word [ebp - 0x34]
xor edx, dword [0x100d3174]
mov edi, edx
xor ebx, ebx
movzx eax, byte [ebp - 0x12]
not eax
cdq
add eax, dword [0x100d3138]
adc edx, dword [0x100d313c]
add edi, eax
adc ebx, edx
add ecx, edi
adc esi, ebx
mov dword [0x100d3148], ecx
mov dword [0x100d314c], esi
mov eax, 4
imul ecx, eax, 0xe4ee
mov edx, dword [0x100d3174]
mov dword [ecx + 0x102f7c38], edx
mov eax, dword [0x100d31a8]
mov edx, dword [0x100d31ac]
mov cl, 5
call fcn.100a25f0
mov dword [0x100d31b4], eax
jmp case.default.0x1004e69b
mov eax, dword [0x100d3198]
mov ecx, dword [0x100d319c]
push 0x1b2d2
push 0x4c636b04
push ecx
push eax
call fcn.100a25b0
mov word [ebp - 0x28], ax
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
mov cl, 3
call fcn.100a25f0
mov byte [ebp - 0x18], al
mov edx, dword [0x100d3168]
or edx, dword [0x100d316c]
jne 0x1004eaa2
xor eax, eax
mov dword [ebp - 0x7a8], 1
mov dword [ebp - 0x7a4], eax
jmp 0x1004eaad
xorps xmm0, xmm0
movlpd qword [ebp - 0x7a8], xmm0
movsx eax, byte [0x100d304e]
movsx ecx, byte [ebp - 0x14]
imul eax, ecx
cdq
mov edx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x9e4], ecx
sub edx, dword [ebp - 0x7a8]
add eax, edx
mov byte [ebp - 0x17], al
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x58]
not edx
not eax
add edx, dword [0x100d3138]
adc eax, dword [0x100d313c]
push 0
push 0x8870cfa7
push eax
push edx
call fcn.100a25b0
mov word [0x100d3128], ax
mov eax, dword [ebp - 0x68]
cdq
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x38]
mov dword [ebp - 0x7b0], eax
mov dword [ebp - 0x7ac], edx
mov dword [ebp - 0x7b8], ecx
mov dword [ebp - 0x7b4], esi
mov edx, dword [ebp - 0x7ac]
cmp edx, dword [ebp - 0x7b4]
jg 0x1004eb49
jl 0x1004eb3d
mov eax, dword [ebp - 0x7b0]
cmp eax, dword [ebp - 0x7b8]
ja 0x1004eb49
mov dword [ebp - 0x294], 1
jmp 0x1004eb53
mov dword [ebp - 0x294], 0
cmp dword [ebp - 0x68], 0x35
jg 0x1004eb65
mov dword [ebp - 0x298], 1
jmp 0x1004eb6f
mov dword [ebp - 0x298], 0
mov ecx, dword [ebp - 0x294]
cmp ecx, dword [ebp - 0x298]
jne 0x1004ecde
movsx eax, word [ebp - 0x24]
cdq
mov dword [ebp - 0x7c0], eax
mov dword [ebp - 0x7bc], edx
mov edx, dword [ebp - 0x7bc]
cmp edx, dword [0x100d3154]
ja 0x1004ebbc
jb 0x1004ebb0
mov eax, dword [ebp - 0x7c0]
cmp eax, dword [0x100d3150]
jae 0x1004ebbc
mov dword [ebp - 0x29c], 1
jmp 0x1004ebc6
mov dword [ebp - 0x29c], 0
movsx ecx, word [ebp - 0x24]
cmp ecx, 0x48
jge 0x1004ebdb
mov dword [ebp - 0x2a0], 1
jmp 0x1004ebe5
mov dword [ebp - 0x2a0], 0
mov edx, dword [ebp - 0x29c]
cmp edx, dword [ebp - 0x2a0]
je 0x1004ec90
movsx eax, word [0x100d31b0]
movzx ecx, byte [0x100d304f]
imul eax, ecx
mov word [0x100d31b0], ax
push 0
push 0xc58d04c4
mov edx, dword [ebp - 0x6c]
push edx
mov eax, dword [ebp - 0x70]
push eax
call fcn.100a25b0
mov word [ebp - 0x30], ax
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
add ecx, dword [0x100d3138]
adc edx, dword [0x100d313c]
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x60], edx
movzx eax, byte [ebp - 0x11]
test eax, eax
jne 0x1004ec52
mov dword [ebp - 0x2a4], 1
jmp 0x1004ec5c
mov dword [ebp - 0x2a4], 0
xor ecx, ecx
sub ecx, dword [0x100d3170]
mov edx, dword [0x100d3190]
sub edx, ecx
and edx, dword [ebp - 0x2a4]
mov byte [0x100d3026], dl
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x9e8], ecx
add eax, 0xb7
mov byte [0x100d3026], al
jmp 0x1004ecde
mov dl, byte [ebp - 0x16]
add dl, 1
mov byte [ebp - 0x16], dl
movsx eax, word [0x100d3130]
movsx ecx, word [0x100d31b0]
imul eax, ecx
movsx edx, word [0x100d3130]
imul edx, eax
mov word [0x100d3130], dx
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x58]
mov dword [ebp - 0x9ec], ecx
mov word [ebp - 0x20], ax
mov ecx, dword [ebp - 0x70]
sub ecx, 0x47806b59
movsx eax, byte [ebp - 0x13]
cdq
or eax, ecx
mov byte [ebp - 0x13], al
movzx edx, word [ebp - 0x84]
cmp edx, 0x419
jne 0x1004eee5
mov eax, 0x269c
mov word [ebp - 0x34], ax
movzx ecx, byte [ebp - 0x11]
imul edx, ecx, 0xbcc1636b
mov dword [0x100d311c], edx
mov eax, dword [0x100d3140]
xor ecx, ecx
mov edx, dword [ebp - 0x38]
add eax, dword [ebp - 0x3c]
adc ecx, edx
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], ecx
mov dword [0x100d3140], 0xce00f418
xor eax, eax
mov word [0x100d3128], ax
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0x9f0], edx
mov eax, 4
imul edx, eax, 0x22
mov dword [edx + 0x10277858], ecx
mov eax, dword [0x100d31b4]
xor eax, dword [ebp - 0x68]
add eax, dword [0x100d31b4]
mov dword [0x100d31b4], eax
mov ecx, dword [0x100d3138]
add ecx, 0x9346
mov byte [ebp - 0x15], cl
mov edx, 4
imul eax, edx, 0xd642
mov eax, dword [eax + 0x101f5ea8]
cdq
mov ecx, dword [0x100d3148]
sub ecx, eax
mov eax, dword [0x100d314c]
sbb eax, edx
mov dword [0x100d3148], ecx
mov dword [0x100d314c], eax
mov ecx, 4
imul edx, ecx, 0x24
mov ax, word [edx + 0x10277858]
mov word [0x100d31b0], ax
movsx ecx, word [0x100d3128]
mov dword [ebp - 0x524], ecx
cmp dword [ebp - 0x524], 0
je 0x1004edc9
jmp 0x1004eed8
mov edx, dword [ebp - 0x80]
add edx, 0x251cb863
mov eax, dword [ebp - 0x7c]
adc eax, 0
mov ecx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x40]
and ecx, edx
and esi, eax
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], esi
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
push esi
push ecx
push eax
push edx
call fcn.100a25b0
mov ecx, eax
mov esi, edx
movsx eax, byte [ebp - 0x15]
cdq
sub eax, dword [0x100d3148]
sbb edx, dword [0x100d314c]
add ecx, eax
adc esi, edx
mov eax, dword [0x100d311c]
add eax, dword [ebp - 0x68]
cdq
xor eax, dword [0x100d3120]
xor edx, dword [0x100d3124]
and ecx, eax
and esi, edx
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x6c], esi
movzx edx, word [ebp - 0x28]
xor edx, 0xb5
mov byte [ebp - 0x14], dl
mov dword [0x100d3170], 0x8c85
mov eax, 2
mov word [ebp - 0x34], ax
movsx eax, word [ebp - 0x30]
cdq
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x38]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x7c8], ecx
mov dword [ebp - 0x7c4], esi
mov edx, dword [ebp - 0x7c8]
or edx, dword [ebp - 0x7c4]
jne 0x1004ee8a
mov dword [ebp - 0x2a8], 1
jmp 0x1004ee94
mov dword [ebp - 0x2a8], 0
movzx eax, byte [0x100d3063]
test eax, eax
jne 0x1004eeab
mov dword [ebp - 0x2ac], 1
jmp 0x1004eeb5
mov dword [ebp - 0x2ac], 0
mov ecx, dword [ebp - 0x2a8]
imul ecx, dword [ebp - 0x2ac]
not ecx
sub ecx, dword [0x100d3158]
xor edx, edx
mov dword [0x100d3148], ecx
mov dword [0x100d314c], edx
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
movsx eax, byte [ebp - 0x16]
test eax, eax
je 0x1004efcd
mov ecx, 0xd4
sub ecx, dword [0x100d3174]
je 0x1004ef62
mov edx, dword [0x100d3c78]
xor eax, eax
mov dword [0x100d3180], edx
mov dword [0x100d3184], eax
mov ecx, dword [0x100d3144]
add ecx, 0x3b
mov dword [0x100d3170], ecx
movzx eax, byte [ebp - 0x18]
cdq
mov ecx, eax
sub ecx, dword [0x100d3148]
movzx eax, byte [ebp - 0x18]
cdq
sub eax, ecx
mov byte [ebp - 0x18], al
mov edx, dword [0x100d3c78]
xor eax, eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], eax
movzx ecx, byte [0x100d304f]
imul edx, ecx, 0x7c
mov byte [ebp - 0x12], dl
movsx eax, word [ebp - 0x24]
add eax, dword [0x100d3170]
mov word [ebp - 0x24], ax
jmp 0x1004efc8
movzx eax, byte [ebp - 0x11]
cdq
mov ecx, eax
mov esi, edx
and ecx, 0x776ac754
and esi, 0x8df1d
movsx eax, byte [ebp - 0x16]
cdq
push esi
push ecx
push edx
push eax
call fcn.100a25b0
mov byte [ebp - 0x16], al
movsx edx, word [ebp - 0x34]
imul edx, dword [0x100d31b4]
movsx eax, word [ebp - 0x34]
imul eax, edx
mov word [ebp - 0x34], ax
movsx ecx, word [0x100d3130]
add ecx, 0x7f
mov byte [ebp - 0x13], cl
movsx edx, word [ebp - 0x2c]
movsx eax, word [0x100d3128]
add edx, eax
mov word [ebp - 0x2c], dx
xor ecx, ecx
mov dword [ebp - 0x80], 1
mov dword [ebp - 0x7c], ecx
jmp 0x1004f260
movzx edx, byte [ebp - 0x11]
test edx, edx
je 0x1004f0c1
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0x9f4], ecx
add eax, 0x33a7945
mov dword [0x100d3174], eax
mov eax, dword [0x100d3190]
cdq
push 0x7f648
push 0x720e5c06
push edx
push eax
call fcn.100a25b0
mov dword [0x100d3190], eax
movsx eax, byte [0x100d304e]
cdq
mov dword [0x100d31a8], eax
mov dword [0x100d31ac], edx
mov edx, dword [0x100d3174]
xor eax, eax
mov ecx, dword [0x100d3198]
mov esi, dword [0x100d319c]
push eax
push edx
push esi
push ecx
call fcn.100a25b0
mov ecx, dword [0x100d3198]
mov esi, dword [0x100d319c]
sub ecx, eax
sbb esi, edx
mov dword [0x100d3198], ecx
mov dword [0x100d319c], esi
mov dword [0x100d3158], 0x14d0
mov edx, dword [0x100d3170]
xor eax, eax
or edx, dword [ebp - 0x78]
or eax, dword [ebp - 0x74]
movzx ecx, word [ebp - 0x20]
mov esi, dword [0x100d3174]
not esi
imul ecx, esi
xor esi, esi
push esi
push ecx
push eax
push edx
call fcn.100a25b0
mov dword [ebp - 0x7d0], eax
mov dword [ebp - 0x7cc], edx
mov edx, dword [ebp - 0x7d0]
or edx, dword [ebp - 0x7cc]
jne 0x1004f0ac
mov byte [ebp - 0x87], 1
jmp 0x1004f0b3
mov byte [ebp - 0x87], 0
mov al, byte [ebp - 0x87]
mov byte [ebp - 0x15], al
jmp 0x1004f260
movsx eax, byte [ebp - 0x14]
not eax
cdq
mov dword [ebp - 0x7d8], eax
mov dword [ebp - 0x7d4], edx
mov ecx, dword [ebp - 0x7d4]
cmp ecx, dword [ebp - 0x7c]
jb 0x1004f0f8
ja 0x1004f0ec
mov edx, dword [ebp - 0x7d8]
cmp edx, dword [ebp - 0x80]
jb 0x1004f0f8
mov dword [ebp - 0x2b0], 1
jmp 0x1004f102
mov dword [ebp - 0x2b0], 0
mov eax, dword [0x100d3144]
xor ecx, ecx
mov edx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
push ecx
push eax
push esi
push edx
call fcn.100a25b0
mov ecx, eax
mov esi, edx
not ecx
not esi
mov eax, dword [ebp - 0x2b0]
not eax
cdq
mov dword [ebp - 0x7e0], ecx
mov dword [ebp - 0x7dc], esi
mov dword [ebp - 0x7e8], eax
mov dword [ebp - 0x7e4], edx
mov edx, dword [ebp - 0x7dc]
cmp edx, dword [ebp - 0x7e4]
jg 0x1004f260
jl 0x1004f167
mov eax, dword [ebp - 0x7e0]
cmp eax, dword [ebp - 0x7e8]
jae 0x1004f260
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0x9f8], edx
mov word [ebp - 0x30], cx
cmp dword [0x100d3140], 0
jne 0x1004f194
xor eax, eax
mov dword [ebp - 0x49c], 1
mov dword [ebp - 0x498], eax
jmp 0x1004f19f
xorps xmm0, xmm0
movlpd qword [ebp - 0x49c], xmm0
movzx ecx, byte [ebp - 0x12]
test ecx, ecx
jne 0x1004f1b3
mov dword [ebp - 0x2b4], 1
jmp 0x1004f1bd
mov dword [ebp - 0x2b4], 0
movzx eax, byte [ebp - 0x18]
add eax, 0xdce8
cdq
mov ecx, eax
mov esi, edx
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x38]
and edx, dword [ebp - 0x49c]
and eax, dword [ebp - 0x498]
add ecx, edx
adc esi, eax
movzx eax, word [0x100d3178]
imul eax, dword [ebp - 0x2b4]
movzx edx, byte [0x100d304f]
add eax, edx
cdq
xor ecx, eax
xor esi, edx
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x60], esi
mov eax, dword [0x100d31a8]
mov ecx, dword [0x100d31ac]
mov edx, dword [0x100d3154]
push edx
mov edx, dword [0x100d3150]
push edx
push ecx
push eax
call fcn.100a25b0
mov dword [0x100d31a8], eax
mov dword [0x100d31ac], edx
movzx eax, byte [ebp - 0x12]
movsx ecx, word [ebp - 0x34]
xor eax, ecx
mov byte [ebp - 0x12], al
mov edx, dword [0x100d31a0]
mov eax, dword [0x100d31a4]
mov dword [ebp - 0x9fc], eax
sub edx, 0x8d
mov ecx, dword [0x100d3140]
add ecx, edx
mov dword [0x100d3140], ecx
movzx edx, word [ebp - 0x84]
cmp edx, 0x428
jne 0x1004fbb1
push 0
push 0x2ede
mov eax, dword [ebp - 0x7c]
push eax
mov ecx, dword [ebp - 0x80]
push ecx
call fcn.100a25b0
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
movsx edx, word [ebp - 0x34]
movzx eax, word [ebp - 0x1c]
sub edx, eax
mov word [ebp - 0x34], dx
mov cx, word [0x100d315c]
mov word [ebp - 0x2c], cx
movsx eax, word [0x100d3128]
cdq
push 0xd9cd
push 0xd0d49c29
push edx
push eax
call fcn.100a25b0
mov ecx, eax
movsx eax, word [ebp - 0x24]
cdq
add eax, ecx
mov word [ebp - 0x24], ax
mov edx, dword [0x100d3190]
push edx
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [0x100d3c78]
mov dword [ebp - 0xcc], eax
jmp 0x1004f2f5
jmp 0x1004f315
jmp 0x1004f33f
jmp 0x1004f37f
jmp 0x1004f3b3
mov ecx, dword [ebp - 0xcc]
add ecx, 0x76f
mov dword [ebp - 0x530], ecx
movzx eax, byte [ebp - 0x18]
cdq
mov dword [ebp - 0x7f0], eax
mov dword [ebp - 0x7ec], edx
mov edx, dword [ebp - 0x7f0]
cmp edx, dword [ebp - 0x70]
jne 0x1004f3ec
mov eax, dword [ebp - 0x7ec]
cmp eax, dword [ebp - 0x6c]
je 0x1004f42e
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [ebp - 0x2b8], eax
cmp dword [ebp - 0x2b8], 0
je 0x1004f429
mov ecx, dword [ebp - 0x2b8]
push ecx
call dword [sym.imp.USER32.dll_GetMenu]
mov dword [ebp - 0x528], eax
push 1
mov edx, dword [ebp - 0x528]
push edx
call dword [sym.imp.USER32.dll_GetSubMenu]
mov dword [ebp - 0xa00], eax
jmp 0x1004f68e
cmp dword [0x100d31b4], 0
je 0x1004f4db
mov ecx, dword [0x100d3150]
sub ecx, 0x40dca62f
movsx eax, word [ebp - 0x2c]
cdq
sub eax, ecx
mov word [ebp - 0x2c], ax
mov esi, dword [0x100d3160]
xor esi, 0xeb524ea
not esi
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x58]
push eax
push edx
mov ecx, dword [ebp - 0x48]
push ecx
mov edx, dword [ebp - 0x4c]
push edx
call fcn.100a25b0
xor esi, eax
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0xa04], ecx
add eax, 0xdbacfbd8
sub esi, eax
not esi
mov word [0x100d31b0], si
movsx edx, byte [ebp - 0x13]
sub edx, 0x88fd
mov byte [ebp - 0x12], dl
movsx eax, byte [0x100d304e]
cdq
mov ecx, eax
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0xa08], eax
sub ecx, edx
movsx eax, byte [0x100d304e]
cdq
or eax, ecx
mov byte [0x100d304e], al
mov ecx, dword [0x100d3174]
and ecx, 0x84
mov byte [ebp - 0x18], cl
jmp 0x1004f68e
movsx edx, word [0x100d3128]
test edx, edx
je 0x1004f53f
mov dword [0x100d311c], 4
mov byte [ebp - 0x17], 0xd2
xor eax, eax
mov dword [0x100d3180], 8
mov dword [0x100d3184], eax
movzx ecx, byte [0x100d3063]
and ecx, 0xfd
movsx edx, byte [ebp - 0x16]
and edx, ecx
mov byte [ebp - 0x16], dl
movsx eax, word [0x100d31b0]
sub eax, 0x19406104
cdq
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
movzx eax, byte [ebp - 0x12]
add eax, 0x98
mov byte [ebp - 0x15], al
jmp 0x1004f68e
cmp dword [0x100d3144], 0
je 0x1004f68e
movsx ecx, word [ebp - 0x30]
test ecx, ecx
je 0x1004f56d
mov edx, dword [0x100d31a8]
mov eax, dword [0x100d31ac]
mov dword [ebp - 0x4a4], edx
mov dword [ebp - 0x4a0], eax
jmp 0x1004f581
mov ecx, dword [0x100d3170]
xor edx, edx
mov dword [ebp - 0x4a4], ecx
mov dword [ebp - 0x4a0], edx
mov ax, word [ebp - 0x4a4]
mov word [ebp - 0x20], ax
movzx eax, word [ebp - 0x1c]
cdq
mov ecx, dword [0x100d31a8]
mov esi, dword [0x100d31ac]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov ecx, dword [0x100d31a8]
mov esi, dword [0x100d31ac]
sub ecx, eax
sbb esi, edx
mov dword [0x100d31a8], ecx
mov dword [0x100d31ac], esi
mov ecx, dword [0x100d31a0]
mov edx, dword [0x100d31a4]
mov dword [ebp - 0xa0c], edx
xor ecx, 0xe506
movzx eax, byte [0x100d304f]
cdq
sub eax, ecx
mov byte [0x100d304f], al
movsx eax, word [ebp - 0x34]
test eax, eax
je 0x1004f604
movsx eax, byte [ebp - 0x13]
cdq
mov dword [ebp - 0x4ac], eax
mov dword [ebp - 0x4a8], edx
jmp 0x1004f61c
mov ecx, dword [0x100d3168]
mov edx, dword [0x100d316c]
mov dword [ebp - 0x4ac], ecx
mov dword [ebp - 0x4a8], edx
mov ax, word [ebp - 0x4ac]
mov word [ebp - 0x24], ax
movsx ecx, byte [ebp - 0x13]
test ecx, ecx
jne 0x1004f63b
mov dword [ebp - 0x2bc], 1
jmp 0x1004f645
mov dword [ebp - 0x2bc], 0
movzx eax, byte [ebp - 0x11]
sub eax, dword [ebp - 0x2bc]
cdq
mov ecx, dword [ebp - 0x48]
push ecx
mov ecx, dword [ebp - 0x4c]
push ecx
push edx
push eax
call fcn.100a25b0
mov ecx, eax
mov esi, edx
movsx eax, byte [ebp - 0x16]
cdq
mov edi, dword [0x100d31a4]
sub eax, dword [0x100d31a0]
sbb edx, edi
mov edi, dword [0x100d31b4]
not edi
xor ebx, ebx
add eax, edi
adc edx, ebx
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x7c], esi
mov edx, dword [ebp - 0xcc]
add edx, 0x6dd
mov dword [ebp - 0x52c], edx
movzx eax, byte [ebp - 0x18]
cdq
mov ecx, dword [0x100d31a0]
mov esi, dword [0x100d31a4]
mov dword [ebp - 0x7f8], eax
mov dword [ebp - 0x7f4], edx
mov dword [ebp - 0x800], ecx
mov dword [ebp - 0x7fc], esi
mov edx, dword [ebp - 0x7f4]
cmp edx, dword [ebp - 0x7fc]
jl 0x1004f6f3
jg 0x1004f6e7
mov eax, dword [ebp - 0x7f8]
cmp eax, dword [ebp - 0x800]
jb 0x1004f6f3
mov dword [ebp - 0x2c0], 1
jmp 0x1004f6fd
mov dword [ebp - 0x2c0], 0
movzx ecx, byte [ebp - 0x18]
cmp ecx, 0x3a
jl 0x1004f712
mov dword [ebp - 0x2c4], 1
jmp 0x1004f71c
mov dword [ebp - 0x2c4], 0
mov edx, dword [ebp - 0x2c0]
cmp edx, dword [ebp - 0x2c4]
jle 0x1004f755
mov ecx, 9
mov esi, str.Errorgettingcompon
lea edi, [ebp - 0xaac]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea eax, [ebp - 0xaac]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [0x100d3144], eax
jmp 0x1004f869
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0xa10], edx
mov eax, 1
imul edx, eax, 0xb7
mov byte [edx + 0x10297920], cl
mov ecx, dword [0x100d3168]
not ecx
mov esi, dword [0x100d316c]
not esi
movzx eax, word [0x100d315c]
cdq
mov edi, dword [ebp - 0x54]
mov ebx, dword [ebp - 0x50]
add edi, eax
adc ebx, edx
xor ecx, edi
xor esi, ebx
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x50], esi
mov edx, dword [0x100d3c78]
mov dword [0x100d3134], edx
movzx eax, word [0x100d3178]
movzx ecx, byte [ebp - 0x17]
imul eax, ecx
not eax
cdq
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
mov edx, dword [0x100d3168]
or edx, dword [0x100d316c]
jne 0x1004f7db
mov dword [ebp - 0x2c8], 1
jmp 0x1004f7e5
mov dword [ebp - 0x2c8], 0
movzx eax, byte [0x100d3063]
not eax
cdq
mov ecx, dword [0x100d3138]
sub ecx, eax
mov esi, dword [0x100d313c]
sbb esi, edx
movsx edx, byte [ebp - 0x16]
mov eax, dword [0x100d311c]
xor eax, edx
cdq
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov dword [ebp - 0x808], eax
mov dword [ebp - 0x804], edx
mov eax, dword [ebp - 0x808]
or eax, dword [ebp - 0x804]
jne 0x1004f83a
mov dword [ebp - 0x2cc], 1
jmp 0x1004f844
mov dword [ebp - 0x2cc], 0
movsx ecx, word [0x100d3130]
not ecx
add ecx, dword [0x100d3158]
mov edx, dword [ebp - 0x2c8]
sub edx, ecx
not edx
add edx, dword [ebp - 0x2cc]
mov dword [0x100d3144], edx
mov eax, dword [ebp - 0xcc]
add eax, 0x5a7
mov dword [ebp - 0xa14], eax
jmp 0x1004f881
mov ecx, dword [ebp - 0x52c]
sub ecx, 0x175
cmp ecx, dword [ebp - 0x530]
je 0x1004fbac
cmp dword [0x100d3124], 0x4f543
jb 0x1004f8c3
ja 0x1004f8b3
cmp dword [0x100d3120], 0x6f60410d
jb 0x1004f8c3
movzx edx, word [ebp - 0x28]
push edx
call dword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x1004fb7c
movzx eax, byte [ebp - 0x11]
cmp eax, 0x1cb5f587
jne 0x1004f8da
mov dword [ebp - 0x2d0], 1
jmp 0x1004f8e4
mov dword [ebp - 0x2d0], 0
movzx ecx, word [ebp - 0x28]
add ecx, dword [ebp - 0x2d0]
je 0x1004f945
movsx eax, word [ebp - 0x2c]
cdq
add eax, dword [0x100d3188]
adc edx, dword [0x100d318c]
mov dword [0x100d3188], eax
mov dword [0x100d318c], edx
cmp dword [0x100d3134], 0
jne 0x1004f91e
mov byte [ebp - 0x88], 1
jmp 0x1004f925
mov byte [ebp - 0x88], 0
mov dl, byte [ebp - 0x88]
mov byte [0x100d3027], dl
movsx eax, byte [ebp - 0x14]
add eax, 0x60190632
mov word [0x100d3128], ax
jmp 0x1004fb7c
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
not ecx
not edx
mov eax, dword [0x100d313c]
push eax
mov eax, dword [0x100d3138]
push eax
push edx
push ecx
call fcn.100a25b0
mov dword [ebp - 0x810], eax
mov dword [ebp - 0x80c], edx
mov ecx, dword [ebp - 0x810]
cmp ecx, dword [0x100d3150]
jne 0x1004f98e
mov edx, dword [ebp - 0x80c]
cmp edx, dword [0x100d3154]
je 0x1004fa72
movsx eax, byte [ebp - 0x13]
cdq
sub eax, 0x29c52527
sbb edx, 0x86bf3
mov dword [0x100d3188], eax
mov dword [0x100d318c], edx
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x74]
mov dword [ebp - 0x818], eax
mov dword [ebp - 0x814], ecx
mov edx, dword [ebp - 0x818]
or edx, dword [ebp - 0x814]
jne 0x1004f9dd
xor eax, eax
mov dword [ebp - 0x4b4], 1
mov dword [ebp - 0x4b0], eax
jmp 0x1004f9e8
xorps xmm0, xmm0
movlpd qword [ebp - 0x4b4], xmm0
mov ecx, dword [0x100d3180]
mov edx, dword [0x100d3184]
add ecx, dword [ebp - 0x4b4]
adc edx, dword [ebp - 0x4b0]
sub ecx, dword [0x100d3138]
sbb edx, dword [0x100d313c]
mov eax, dword [ebp - 0x64]
mov esi, dword [ebp - 0x60]
push esi
push eax
push edx
push ecx
call fcn.100a25b0
mov word [ebp - 0x1c], ax
movzx ecx, word [ebp - 0x28]
xor ecx, dword [0x100d3170]
jne 0x1004fa37
mov dword [ebp - 0x2d4], 1
jmp 0x1004fa41
mov dword [ebp - 0x2d4], 0
movsx edx, byte [ebp - 0x14]
sub edx, dword [ebp - 0x2d4]
mov word [ebp - 0x30], dx
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x40]
add eax, dword [ebp - 0x44]
adc ecx, edx
mov edx, dword [ebp - 0x5c]
mov esi, dword [ebp - 0x58]
sub edx, eax
sbb esi, ecx
mov dword [ebp - 0x5c], edx
mov dword [ebp - 0x58], esi
jmp 0x1004fb7c
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x820], eax
mov dword [ebp - 0x81c], ecx
mov edx, dword [ebp - 0x81c]
cmp edx, dword [0x100d318c]
jb 0x1004fb7c
ja 0x1004faaa
mov ecx, 9
mov esi, 0x100af75c
lea edi, [ebp - 0xad4]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea eax, [ebp - 0xad4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cdq
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], edx
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
jmp 0x10050108
movsx eax, byte [ebp - 0x14]
cdq
mov dword [ebp - 0x828], eax
mov dword [ebp - 0x824], edx
mov ecx, dword [0x100d3120]
cmp ecx, dword [ebp - 0x828]
jne 0x1004fbe2
mov edx, dword [0x100d3124]
cmp edx, dword [ebp - 0x824]
je 0x1004fff9
movsx eax, byte [ebp - 0x15]
cdq
mov dword [ebp - 0x830], eax
mov dword [ebp - 0x82c], edx
mov eax, dword [0x100d3164]
cmp eax, dword [ebp - 0x82c]
jb 0x1004fc1c
ja 0x1004fc10
mov ecx, dword [0x100d3160]
cmp ecx, dword [ebp - 0x830]
jb 0x1004fc1c
mov dword [ebp - 0x2d8], 1
jmp 0x1004fc26
mov dword [ebp - 0x2d8], 0
cmp dword [0x100d3164], 0
ja 0x1004fc38
cmp dword [0x100d3160], 0x20
jb 0x1004fc44
mov dword [ebp - 0x2dc], 1
jmp 0x1004fc4e
mov dword [ebp - 0x2dc], 0
mov edx, dword [ebp - 0x2d8]
cmp edx, dword [ebp - 0x2dc]
jge 0x1004ff25
mov dword [ebp - 0xd0], 0
jmp 0x1004fc7b
mov eax, dword [ebp - 0xd0]
add eax, 1
mov dword [ebp - 0xd0], eax
cmp dword [ebp - 0xd0], 0xe4
jge 0x1004ff20
push 0
movsx cx, byte [0x100d3026]
movzx edx, cx
push edx
push 0x78
movzx eax, word [0x100d3138]
push eax
call fcn.1005a510
add esp, 0x10
movzx ecx, ax
mov dword [0x100d3170], ecx
cmp dword [0x100d3170], 0
jb 0x1004fcc9
mov dword [ebp - 0x2e0], 1
jmp 0x1004fcd3
mov dword [ebp - 0x2e0], 0
cmp dword [0x100d3170], 0x3b
jb 0x1004fce8
mov dword [ebp - 0x2e4], 1
jmp 0x1004fcf2
mov dword [ebp - 0x2e4], 0
mov edx, dword [ebp - 0x2e0]
cmp edx, dword [ebp - 0x2e4]
jg 0x1004fe17
mov eax, 0x1d0207d
or eax, 0x31cb2
je 0x1004fda6
movsx eax, byte [ebp - 0x15]
cdq
push 0x87006
push 0xc8c3617b
push edx
push eax
call fcn.100a25b0
mov dword [0x100d3150], eax
mov dword [0x100d3154], edx
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0xa18], edx
sub ecx, 0x67
mov word [0x100d3128], cx
mov dword [0x100d3190], 0x68ac
mov dword [0x100d3174], 0x1637fcb8
movzx eax, byte [ebp - 0x12]
test eax, eax
je 0x1004fd7b
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0x398], ecx
mov dword [ebp - 0x394], edx
jmp 0x1004fd8d
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x398], eax
mov dword [ebp - 0x394], ecx
mov edx, dword [ebp - 0x398]
mov eax, dword [ebp - 0x394]
mov dword [0x100d3198], edx
mov dword [0x100d319c], eax
jmp 0x1004fe12
cmp dword [ebp - 0x68], 0
je 0x1004fe12
mov ecx, 8
shl ecx, 0
mov dl, byte [ecx + 0x101bcef0]
mov byte [ebp - 0x14], dl
movzx eax, word [ebp - 0x1c]
movsx ecx, word [0x100d31b0]
sub eax, ecx
movzx edx, word [ebp - 0x1c]
imul edx, eax
mov word [ebp - 0x1c], dx
movzx eax, byte [ebp - 0x11]
sub eax, 0xbb2f
cdq
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
mov eax, dword [0x100d3c78]
xor ecx, ecx
mov dword [0x100d3168], eax
mov dword [0x100d316c], ecx
movsx eax, byte [ebp - 0x13]
cdq
sub eax, 0x77f9aacf
sbb edx, 0x41481
mov dword [0x100d3188], eax
mov dword [0x100d318c], edx
jmp 0x1004ff09
cmp dword [0x100d3140], 0
je 0x1004fe39
mov edx, dword [0x100d3148]
mov eax, dword [0x100d314c]
mov dword [ebp - 0x4c4], edx
mov dword [ebp - 0x4c0], eax
jmp 0x1004fe4b
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0x4c4], ecx
mov dword [ebp - 0x4c0], edx
mov ax, word [ebp - 0x4c4]
mov word [ebp - 0x30], ax
movsx ecx, word [0x100d31b0]
add ecx, dword [0x100d31b4]
movsx edx, word [0x100d31b0]
imul edx, ecx
mov word [0x100d31b0], dx
movzx eax, byte [ebp - 0x11]
sar eax, 4
cdq
mov dword [0x100d3198], eax
mov dword [0x100d319c], edx
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], ecx
mov edx, dword [0x100d3198]
mov eax, dword [0x100d319c]
add edx, 0x3b6d3c35
adc eax, 0x1c4f5
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x74], eax
movsx ecx, byte [ebp - 0x13]
mov edx, dword [0x100d3158]
not edx
xor ecx, edx
xor eax, eax
mov esi, dword [ebp - 0x54]
mov edi, dword [ebp - 0x50]
add esi, ecx
adc edi, eax
movzx eax, byte [ebp - 0x17]
cdq
mov ecx, dword [0x100d316c]
push ecx
mov ecx, dword [0x100d3168]
push ecx
push edx
push eax
call fcn.100a25b0
mov ecx, eax
mov ebx, edx
movzx eax, word [ebp - 0x1c]
not eax
movsx edx, byte [ebp - 0x13]
xor eax, edx
not eax
cdq
xor ecx, eax
xor ebx, edx
push ebx
push ecx
push edi
push esi
call fcn.100a25b0
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x38]
add eax, 1
adc ecx, 0
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], ecx
jmp 0x1004fc6c
jmp 0x1004fff4
mov edx, dword [0x100d31a0]
mov eax, dword [0x100d31a4]
mov dword [ebp - 0x838], edx
mov dword [ebp - 0x834], eax
mov ecx, dword [ebp - 0x838]
or ecx, dword [ebp - 0x834]
je 0x1004fff4
mov edx, dword [ebp - 0x68]
sar edx, 7
mov word [ebp - 0x2c], dx
mov eax, dword [0x100d3138]
or eax, dword [0x100d313c]
jne 0x1004ff71
mov dword [ebp - 0x2e8], 1
jmp 0x1004ff7b
mov dword [ebp - 0x2e8], 0
movzx ecx, word [0x100d3178]
test ecx, ecx
jne 0x1004ff92
mov dword [ebp - 0x2ec], 1
jmp 0x1004ff9c
mov dword [ebp - 0x2ec], 0
mov edx, dword [ebp - 0x2e8]
imul edx, dword [ebp - 0x2ec]
mov byte [0x100d304e], dl
mov eax, dword [0x100d3168]
mov edx, dword [0x100d316c]
mov cl, 2
call fcn.100a25f0
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
xor eax, eax
mov dword [0x100d3168], 1
mov dword [0x100d316c], eax
movsx ecx, word [ebp - 0x34]
sub ecx, 0xf9c5
mov word [ebp - 0x2c], cx
mov eax, dword [0x100d3134]
not eax
cdq
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
jmp 0x10050108
movzx edx, byte [0x100d3063]
cmp edx, dword [0x100d311c]
jle 0x10050108
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x74]
sub eax, 0xb94a7ad9
sbb ecx, 0x4f3a5
mov dword [0x100d3168], eax
mov dword [0x100d316c], ecx
mov eax, dword [0x100d311c]
cdq
add eax, dword [0x100d3148]
mov dword [0x100d311c], eax
movzx eax, word [ebp - 0x20]
sar eax, 3
cdq
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], edx
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0xa1c], eax
mov word [ebp - 0x34], dx
mov ecx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x40]
not ecx
not esi
movzx eax, word [ebp - 0x1c]
cdq
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x840], ecx
mov dword [ebp - 0x83c], esi
mov edx, dword [ebp - 0x840]
or edx, dword [ebp - 0x83c]
jne 0x10050090
mov dword [ebp - 0x2f0], 1
jmp 0x1005009a
mov dword [ebp - 0x2f0], 0
movzx eax, word [ebp - 0x20]
movsx ecx, word [0x100d3130]
not ecx
sub eax, ecx
jne 0x100500b7
mov dword [ebp - 0x2f4], 1
jmp 0x100500c1
mov dword [ebp - 0x2f4], 0
mov edx, dword [ebp - 0x2f0]
imul edx, dword [ebp - 0x2f4]
mov dword [0x100d3170], edx
movzx eax, byte [ebp - 0x11]
movsx ecx, byte [0x100d3026]
imul eax, ecx
test eax, eax
jne 0x100500f4
mov edx, 1
mov word [ebp - 0x8c], dx
jmp 0x100500fd
xor eax, eax
mov word [ebp - 0x8c], ax
mov cx, word [ebp - 0x8c]
mov word [ebp - 0x1c], cx
mov edx, dword [ebp - 0x2f8]
sub edx, dword [ebp - 0x2fc]
mov eax, 0x2c8
sub eax, dword [ebp - 0x2f8]
or edx, eax
cmp edx, dword [ebp - 0x2fc]
je 0x10051c46
push 0x59
movzx ecx, word [ebp - 0x1c]
push ecx
call fcn.1005b280
add esp, 8
mov word [ebp - 0x1c], ax
movzx edx, word [ebp - 0x28]
test edx, edx
jge 0x10050154
mov dword [ebp - 0x308], 1
jmp 0x1005015e
mov dword [ebp - 0x308], 0
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x58]
mov dword [ebp - 0x848], eax
mov dword [ebp - 0x844], ecx
mov edx, dword [ebp - 0x848]
or edx, dword [ebp - 0x844]
jne 0x1005018a
mov dword [ebp - 0x300], 1
jmp 0x10050194
mov dword [ebp - 0x300], 0
mov eax, dword [0x100d3190]
cmp dword [ebp - 0x300], eax
jl 0x100501ad
mov dword [ebp - 0x304], 1
jmp 0x100501b7
mov dword [ebp - 0x304], 0
mov ecx, dword [ebp - 0x304]
not ecx
mov edx, dword [ebp - 0x308]
sub edx, ecx
je 0x10050272
movsx eax, word [0x100d3130]
test eax, eax
jne 0x100501ec
xor ecx, ecx
mov dword [ebp - 0x4cc], 1
mov dword [ebp - 0x4c8], ecx
jmp 0x100501f7
xorps xmm0, xmm0
movlpd qword [ebp - 0x4cc], xmm0
movzx edx, word [ebp - 0x20]
movzx eax, word [ebp - 0x28]
cmp edx, eax
jne 0x1005020f
mov dword [ebp - 0x30c], 1
jmp 0x10050219
mov dword [ebp - 0x30c], 0
mov ecx, dword [ebp - 0x4cc]
xor ecx, 0xe66cd8bc
mov esi, dword [ebp - 0x4c8]
xor esi, 0xb7be8
mov eax, dword [ebp - 0x30c]
not eax
cdq
mov dword [ebp - 0x850], ecx
mov dword [ebp - 0x84c], esi
mov dword [ebp - 0x858], eax
mov dword [ebp - 0x854], edx
mov edx, dword [ebp - 0x850]
cmp edx, dword [ebp - 0x858]
jne 0x10050272
mov eax, dword [ebp - 0x84c]
cmp eax, dword [ebp - 0x854]
je 0x100503fb
movsx ecx, byte [ebp - 0x14]
movzx edx, byte [0x100d304f]
cmp ecx, edx
jge 0x1005028d
mov dword [ebp - 0x310], 1
jmp 0x10050297
mov dword [ebp - 0x310], 0
movsx eax, byte [ebp - 0x14]
cmp eax, 0x10
jge 0x100502ac
mov dword [ebp - 0x314], 1
jmp 0x100502b6
mov dword [ebp - 0x314], 0
mov ecx, dword [ebp - 0x310]
cmp ecx, dword [ebp - 0x314]
jl 0x10050351
movzx edx, byte [ebp - 0x11]
imul eax, edx, 0x1601269d
cdq
mov dword [0x100d3160], eax
mov dword [0x100d3164], edx
push 0xabcf4
push 0x83401a52
mov eax, dword [0x100d318c]
push eax
mov ecx, dword [0x100d3188]
push ecx
call fcn.100a25b0
mov ecx, eax
mov eax, dword [0x100d3190]
cdq
add eax, ecx
mov dword [0x100d3190], eax
mov edx, 0x79
mov word [0x100d3130], dx
mov eax, 8
mov word [ebp - 0x34], ax
mov ecx, dword [0x100d3158]
xor edx, edx
xor ecx, dword [0x100d3150]
xor edx, dword [0x100d3154]
mov eax, dword [0x100d3150]
sub eax, ecx
mov ecx, dword [0x100d3154]
sbb ecx, edx
mov dword [0x100d3150], eax
mov dword [0x100d3154], ecx
jmp 0x100503fb
movsx edx, byte [ebp - 0x15]
add edx, 0x62eb
mov byte [0x100d3026], dl
movsx eax, word [ebp - 0x2c]
test eax, eax
je 0x10050383
mov ecx, dword [0x100d3180]
mov edx, dword [0x100d3184]
mov dword [ebp - 0x4d4], ecx
mov dword [ebp - 0x4d0], edx
jmp 0x10050394
movsx eax, word [ebp - 0x30]
cdq
mov dword [ebp - 0x4d4], eax
mov dword [ebp - 0x4d0], edx
mov al, byte [ebp - 0x4d4]
mov byte [ebp - 0x11], al
mov byte [0x100d3026], 2
movsx ecx, word [0x100d3130]
movsx edx, word [ebp - 0x30]
imul ecx, edx
movsx eax, word [0x100d3130]
add eax, ecx
mov word [0x100d3130], ax
movsx ecx, word [0x100d31b0]
imul edx, ecx, 3
movsx eax, word [ebp - 0x2c]
imul eax, edx
mov word [ebp - 0x2c], ax
movsx eax, word [ebp - 0x34]
cdq
push edx
push eax
mov ecx, dword [0x100d313c]
push ecx
mov edx, dword [0x100d3138]
push edx
call fcn.100a25b0
mov dword [0x100d3138], eax
mov dword [0x100d313c], edx
cmp dword [0x100d3134], 0
jne 0x10050410
mov dword [ebp - 0x318], 1
jmp 0x1005041a
mov dword [ebp - 0x318], 0
imul eax, dword [ebp - 0x318], 0xd8
not eax
test eax, eax
je 0x100505ec
movsx ecx, word [ebp - 0x30]
test ecx, ecx
je 0x10050563
mov edx, dword [0x100d3190]
not edx
test edx, edx
jne 0x1005047c
movzx eax, byte [ebp - 0x18]
test eax, eax
jne 0x1005045a
mov dword [ebp - 0x31c], 1
jmp 0x10050464
mov dword [ebp - 0x31c], 0
cmp dword [ebp - 0x31c], 0xa085af60
jne 0x1005047c
mov dword [ebp - 0x324], 0
movzx eax, byte [0x100d3027]
cdq
mov dword [ebp - 0x860], eax
mov dword [ebp - 0x85c], edx
mov ecx, dword [0x100d316c]
cmp ecx, dword [ebp - 0x85c]
jb 0x100504c4
ja 0x100504b8
mov dword [ebp - 0x320], 0
movsx eax, word [0x100d3130]
cmp eax, dword [ebp - 0x320]
jge 0x100504e9
mov edx, dword [ebp - 0x70]
xor edx, 0x2eaf10a
mov eax, dword [ebp - 0x6c]
xor eax, 0
mov dword [ebp - 0x868], edx
mov dword [ebp - 0x864], eax
mov ecx, dword [ebp - 0x868]
or ecx, dword [ebp - 0x864]
je 0x100505e7
movsx eax, word [ebp - 0x34]
cdq
add eax, 0x9ea41837
mov dword [0x100d3170], eax
mov edx, dword [0x100d3144]
add edx, 0x4bbc0b6b
xor edx, dword [0x100d31b4]
mov dword [0x100d31b4], edx
mov al, byte [0x100d3027]
mov byte [ebp - 0x17], al
movsx ecx, word [0x100d31b0]
sub ecx, dword [0x100d3174]
mov word [0x100d31b0], cx
mov eax, dword [0x100d3150]
mov edx, dword [0x100d3154]
mov cl, 1
call fcn.100a26c0
mov word [0x100d31b0], ax
jmp 0x10050783
mov ecx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
movzx eax, word [ebp - 0x20]
cdq
mov dword [ebp - 0x870], ecx
mov dword [ebp - 0x86c], esi
mov dword [ebp - 0x878], eax
mov dword [ebp - 0x874], edx
mov edx, dword [ebp - 0x870]
cmp edx, dword [ebp - 0x878]
jne 0x1005062f
mov eax, dword [ebp - 0x86c]
cmp eax, dword [ebp - 0x874]
je 0x10050783
movsx ecx, byte [ebp - 0x14]
test ecx, ecx
jne 0x10050643
mov dword [ebp - 0x32c], 1
jmp 0x1005064d
mov dword [ebp - 0x32c], 0
movsx eax, byte [ebp - 0x16]
add eax, dword [ebp - 0x32c]
cdq
mov ebx, eax
mov eax, dword [ebp - 0x68]
cdq
mov ecx, dword [ebp - 0x7c]
push ecx
mov ecx, dword [ebp - 0x80]
push ecx
push edx
push eax
call fcn.100a25b0
add ebx, eax
push 0
push 0
mov edx, dword [0x100d316c]
push edx
mov eax, dword [0x100d3168]
push eax
call fcn.100a25b0
movsx ecx, byte [0x100d304e]
not ecx
mov edx, dword [0x100d3140]
not edx
add ecx, edx
add eax, ecx
and ebx, eax
mov byte [ebp - 0x11], bl
movsx eax, byte [ebp - 0x15]
cdq
mov esi, eax
mov edi, edx
movzx eax, byte [0x100d304f]
cdq
mov ecx, dword [ebp - 0x48]
push ecx
mov ecx, dword [ebp - 0x4c]
push ecx
push edx
push eax
call fcn.100a25b0
xor esi, eax
xor edi, edx
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x6c], edi
movzx eax, byte [0x100d3063]
not eax
cdq
push edx
push eax
mov edx, dword [0x100d3124]
push edx
mov eax, dword [0x100d3120]
push eax
call fcn.100a25b0
mov ecx, eax
mov esi, edx
movsx eax, byte [0x100d3026]
add eax, 0xfe
cdq
xor ecx, eax
xor esi, edx
mov dword [ebp - 0x880], ecx
mov dword [ebp - 0x87c], esi
mov edx, dword [ebp - 0x880]
or edx, dword [ebp - 0x87c]
jne 0x1005072a
xor eax, eax
mov dword [ebp - 0x4dc], 1
mov dword [ebp - 0x4d8], eax
jmp 0x10050735
xorps xmm0, xmm0
movlpd qword [ebp - 0x4dc], xmm0
mov eax, dword [0x100d3134]
cdq
mov esi, eax
mov edi, edx
movsx eax, word [0x100d3128]
not eax
cdq
push 0xfffc2d3a
push 0x75a24fda
push edx
push eax
call fcn.100a25b0
push edx
push eax
push edi
push esi
call fcn.100a25b0
add eax, dword [ebp - 0x4dc]
adc edx, dword [ebp - 0x4d8]
mov dword [0x100d3180], eax
mov dword [0x100d3184], edx
mov cl, byte [0x100d3c78]
mov byte [ebp - 0x15], cl
movzx edx, word [ebp - 0x84]
cmp edx, 0x442
jne 0x10050e3e
mov ecx, 1
shl ecx, 1
movzx eax, byte [ecx + 0x1033744c]
cdq
mov ecx, dword [0x100d3198]
mov esi, dword [0x100d319c]
push edx
push eax
push esi
push ecx
call fcn.100a25b0
mov dword [0x100d3198], eax
mov dword [0x100d319c], edx
movsx edx, byte [ebp - 0x16]
test edx, edx
je 0x10051c96
mov eax, dword [0x100d3168]
mov ecx, dword [0x100d316c]
mov dword [ebp - 0x4fc], eax
mov dword [ebp - 0x4f8], ecx
jmp 0x10051ca7
movzx eax, byte [ebp - 0x18]
cdq
mov dword [ebp - 0x4fc], eax
mov dword [ebp - 0x4f8], edx
mov edx, dword [ebp - 0x4fc]
mov dword [0x100d3190], edx
movzx eax, word [ebp - 0x28]
sub eax, 0x741adde9
xor ecx, ecx
mov dword [0x100d3198], eax
mov dword [0x100d319c], ecx
mov edx, dword [0x100d3180]
mov eax, dword [0x100d3184]
mov dword [ebp - 0x8c8], edx
mov dword [ebp - 0x8c4], eax
mov ecx, dword [ebp - 0x8c8]
or ecx, dword [ebp - 0x8c4]
je 0x10051d02
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x504], edx
mov dword [ebp - 0x500], eax
jmp 0x10051d16
movzx eax, byte [0x100d304f]
cdq
mov dword [ebp - 0x504], eax
mov dword [ebp - 0x500], edx
mov cl, byte [ebp - 0x504]
mov byte [0x100d3026], cl
movsx edx, byte [ebp - 0x14]
test edx, edx
je 0x10051d36
movsx eax, word [ebp - 0x34]
mov dword [ebp - 0x370], eax
jmp 0x10051d40
movsx ecx, byte [ebp - 0x16]
mov dword [ebp - 0x370], ecx
mov eax, dword [ebp - 0x370]
cdq
mov dword [0x100d3188], eax
mov dword [0x100d318c], edx
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret