Function at 0x1005e080
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x68
mov eax, dword [ebp + 8]
mov eax, dword [0x100d16b8]
xor eax, ebp
mov dword [esp + 0x64], eax
lea eax, [esp + 0x58]
mov dword [esp], eax
call fcn.1005f7a0
mov eax, dword [0x100d0e50]
xor edx, edx
div dword [0x100d0e54]
add eax, 0xc7d1da35
or eax, 0xfa6802a8
or eax, 0xa482a9ba
xor eax, 0x1ef7c76f
mov ecx, 0x767ddbbd
xor edx, edx
div ecx
mov ecx, 0x86b3c725
xor edx, edx
div ecx
add eax, 0x78803a88
or eax, 0xd825f0af
and eax, 0x420a0402
xor eax, 0x11668978
add eax, 0x1c4f485f
sub eax, 0x3c4ecff8
mov ecx, 0xbd82c062
xor edx, edx
div ecx
mov ecx, 0x751a5969
xor edx, edx
div ecx
mov ecx, 0x843ef49d
xor edx, edx
div ecx
and eax, 0x7e4f3a58
mov ecx, 0x6c96b822
xor edx, edx
div ecx
add eax, 0x843df33d
mov ecx, 0x6a7be4e
xor edx, edx
div ecx
mov ecx, 0xc298164f
xor edx, edx
div ecx
and eax, 0x5e31c90
add eax, 0x47959247
sub eax, 0x301f7430
or eax, 0xf33c4213
and eax, 0x929e75cc
and eax, 0x84863b3e
add eax, 0x2102fdea
add eax, 0xe1a8c713
sub eax, 0x17b4e06e
imul eax, eax, 0x94814cbb
and eax, 0xb0dfa229
and eax, 0xbade3a15
and eax, 0xc84c55d8
xor eax, 0x60dd046a
or eax, 0x3906c723
add eax, 0x5ff097d4
and eax, 0xd1031d65
add eax, 0x63a31f81
and eax, 0xd2f31611
or eax, 0x3eaf8ba7
imul eax, eax, 0xb9b92924
add eax, 0x833732a6
xor eax, 0x37f1c851
sub eax, 0x8a566d08
and eax, 0xf489cd33
add eax, 0xea1e6030
and eax, 0xda9308c4
imul eax, eax, 0x3ebb1ddf
mov ecx, 0x49069bfb
xor edx, edx
div ecx
or eax, 0x393998dd
xor eax, 0xf591300c
add eax, 0x6a21a563
xor eax, 0xb931168f
imul eax, eax, 0x6a17bb3a
imul eax, eax, 0xffd4eb80
and eax, 0xfb4a3f97
mov ecx, 0x28b8e2e2
xor edx, edx
div ecx
xor eax, 0xbac2df13
add eax, 0x205d8afc
imul eax, eax, 0xcc0fa399
xor eax, 0x28984982
and eax, 0xc703ae0b
or eax, 0x1a1c963b
imul eax, eax, 0x9628445c
xor eax, 0x9581b627
add eax, 0xaa25d53b
or eax, 0x4d074b74
mov ecx, 0x48f29d0c
xor edx, edx
div ecx
or eax, 0x2a76a35a
mov ecx, 0xb14e7d5c
xor edx, edx
div ecx
add eax, 0x5cf1c612
mov ecx, 0x7f44dcad
xor edx, edx
div ecx
cmp eax, 0x3071411a
je 0x1005f748
mov eax, dword [0x100d0e58]
xor eax, dword [0x100d0e5c]
or eax, 0x1ffb60c9
sub eax, 0x7a24df39
mov ecx, 0xe0e164a1
xor edx, edx
div ecx
imul eax, eax, 0x628a8580
xor eax, 0x13bb628b
or eax, 0x7fff1192
imul eax, eax, 0x1c494b1f
or eax, 0x3a5553ce
and eax, 0x79323307
add eax, 0xb218a2a1
mov ecx, 0xad74f4de
xor edx, edx
div ecx
add eax, 0xd80375d6
imul eax, eax, 0x50bae6b7
mov ecx, 0x44ebc167
xor edx, edx
div ecx
xor eax, 0x657bcb4a
add eax, 0xe2dd215e
or eax, 0x48a681ac
mov ecx, 0x216e391d
xor edx, edx
div ecx
sub eax, 0xbdd795b6
and eax, 0x8685e7b4
sub eax, 0x48d84103
and eax, 0x427f1d0b
mov ecx, 0x117f2f63
xor edx, edx
div ecx
sub eax, 0x724c007
sub eax, 0xa7f4b478
xor eax, 0x3d42652a
and eax, 0xd7c0d173
or eax, 0xd054751c
sub eax, 0x99c03d4c
or eax, 0x42bbe32d
add eax, 0xd7b8c557
imul eax, eax, 0x63f96ebd
imul eax, eax, 0x47824b44
and eax, 0xf2342728
mov ecx, 0xe53bef4c
xor edx, edx
div ecx
add eax, 0x684b8734
or eax, 0x3b09c430
sub eax, 0x3f5056a6
xor eax, 0x37f481e4
and eax, 0x31732c2e
mov ecx, 0x24f0e2d6
xor edx, edx
div ecx
mov ecx, 0x78d35c3b
xor edx, edx
div ecx
mov ecx, 0xccbca41d
xor edx, edx
div ecx
sub eax, 0xced3224
sub eax, 0xaaad3ab2
sub eax, 0xab61f719
or eax, 0xab8acd31
and eax, 0x7a172ca
mov ecx, 0x207ed063
xor edx, edx
div ecx
xor eax, 0x8cb4564b
or eax, 0xe1a197bf
sub eax, 0x645b3525
sub eax, 0xb59a6ec9
imul eax, eax, 0xade3c5a9
sub eax, 0x3717606e
and eax, 0x21abcf59
xor eax, 0x9d4282d7
add eax, 0xd587d0c8
xor eax, 0xca1c3d9
add eax, 0x37d541d0
imul eax, eax, 0x8fc749d8
add eax, 0x688cf26
xor eax, 0x96f881cb
and eax, 0xd73ce149
and eax, 0x8f577b8f
xor eax, 0x7d72312b
and eax, 0x94a5ac3a
sub eax, 0x2834d423
and eax, 0x8947237f
imul eax, eax, 0x8fce95ec
or eax, 0x883a8103
xor eax, 0x3fff6f59
mov dword [esp + 0x1c], eax
mov dword [esp + 0x3c], 0xbb8
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call fcn.10079161
mov ecx, eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x34], 0
cmp eax, 0xc870a0e6
je 0x1005f748
jmp 0x1005e43b
mov eax, dword [0x100d0e60]
imul eax, dword [0x100d0e64]
sub eax, 0x60bb0f3e
mov ecx, 0xf27c8943
xor edx, edx
div ecx
add eax, 0x7229c51f
xor eax, 0x8563bad0
imul eax, eax, 0xbb20ed12
add eax, 0xef6b8123
xor eax, 0x188438aa
xor eax, 0x41dfdbc5
imul eax, eax, 0x50d0b44c
add eax, 0x74d04c4b
and eax, 0xb970738a
imul eax, eax, 0x8670f4a5
add eax, 0x45ee945e
and eax, 0xfffde9ec
add eax, 0xe720a318
xor eax, 0xc89bdcf9
xor eax, 0xc616d991
imul eax, eax, 0x2791f368
xor eax, 0x25da40f1
add eax, 0x1e17a86d
sub eax, 0x16284ace
imul eax, eax, 0xb0ad1d61
and eax, 0x62d106c7
sub eax, 0x513a6008
add eax, 0x62ff88c5
sub eax, 0x20ea5fef
mov ecx, 0xc971d9fe
xor edx, edx
div ecx
mov ecx, 0xd21f2fca
xor edx, edx
div ecx
xor eax, 0xae55977f
imul eax, eax, 0x30039499
mov ecx, 0xfdc164ec
xor edx, edx
div ecx
or eax, 0xb3eeba00
mov ecx, 0xf456a951
xor edx, edx
div ecx
and eax, 0x47103a52
sub eax, 0xa2124594
imul eax, eax, 0x68b7065f
or eax, 0xbcdff232
sub eax, 0xf920ae7a
and eax, 0x99402d46
and eax, 0xcb04889
imul eax, eax, 0x9db783f5
mov ecx, 0x77493dd4
xor edx, edx
div ecx
xor eax, 0x5e36fd3e
add eax, 0xdd529887
mov ecx, 0x4acdbc17
xor edx, edx
div ecx
add eax, 0x6d8f897c
add eax, 0x79021c84
xor eax, 0xf6231cff
xor eax, 0x6cc3c68a
imul eax, eax, 0x97e66100
and eax, 0xde5a4127
and eax, 0x27180743
sub eax, 0x8f85bc6c
xor eax, 0x8812652
sub eax, 0x34650105
sub eax, 0x1df146d1
imul eax, eax, 0x488601e9
mov ecx, 0x1f02688d
xor edx, edx
div ecx
add eax, 0x62659f55
mov ecx, 0x2b261cfc
xor edx, edx
div ecx
mov ecx, 0xafea90ad
xor edx, edx
div ecx
imul eax, eax, 0xbda5ba87
and eax, 0x2224bfa8
or eax, 0xcdd83721
sub eax, 0x8dbe42e1
and eax, 0x598845c8
or eax, 0xb9f8135f
add eax, 0x6a6897bc
or eax, 0x5b6e5d6c
sub eax, 0xb6202457
sub eax, 0x1c558b00
add eax, 0x384618ae
cmp eax, 0x68143aed
jbe 0x1005f76d
mov eax, dword [0x100d0e68]
imul eax, dword [0x100d0e6c]
or eax, 0xdaefb097
sub eax, 0x2bc2ea9d
add eax, 0x10eba9b9
xor eax, 0x11e78807
or eax, 0x5f68d65d
or eax, 0x6d41ac73
and eax, 0x564ac972
or eax, 0x37dc3222
xor eax, 0xda0dc3bc
and eax, 0xc2e2f498
mov ecx, 0x2f01fec9
xor edx, edx
div ecx
and eax, 0xd1c647d4
sub eax, 0xb3a847b8
xor eax, 0xea4f5985
imul eax, eax, 0x8593b24b
add eax, 0x82fa0df4
and eax, 0x4546880f
xor eax, 0x7c36c371
or eax, 0x57d5833c
imul eax, eax, 0x6b68ab2c
xor eax, 0x36b01104
mov ecx, 0x57c9ccd4
xor edx, edx
div ecx
sub eax, 0x328d80e7
and eax, 0x887b50b8
or eax, 0xd3c8fcc9
imul eax, eax, 0x89bc6c2b
sub eax, 0x89c99d8
add eax, 0xda3a954
or eax, 0xd2013f37
mov ecx, 0xebc6ddb9
xor edx, edx
div ecx
imul eax, eax, 0x9d2eb510
imul eax, eax, 0x4c74f053
or eax, 0x34cf681b
sub eax, 0xb3fdadcd
or eax, 0x5f49945a
sub eax, 0x3c287cfc
and eax, 0x567c58c8
and eax, 0x897ca47c
or eax, 0xdd10e10
and eax, 0x4514fea1
sub eax, 0xdb4dbfa8
mov ecx, 0xa880e58f
xor edx, edx
div ecx
and eax, 0x987fc36f
or eax, 0xa51594ab
add eax, 0x3add9ebe
xor eax, 0xf88b6631
imul eax, eax, 0xa8edb3b4
xor eax, 0x99803e5c
or eax, 0x42ec94d2
sub eax, 0xe00f4911
add eax, 0x2875cd61
sub eax, 0xcd31961d
or eax, 0xe884f88d
imul eax, eax, 0x3d1affc3
sub eax, 0xbd531730
sub eax, 0x9e823e1f
or eax, 0x8e635a82
mov ecx, 0x1482c290
xor edx, edx
div ecx
and eax, 0xa051509
sub eax, 0xfd9aa44d
imul eax, eax, 0x42ec0bfb
mov ecx, 0x834479af
xor edx, edx
div ecx
xor eax, 0xc28d6c64
add eax, 0x37470c0f
and eax, 0x48a5b52b
or eax, 0xb45a91b1
mov ecx, 0xc62cd910
xor edx, edx
div ecx
mov ecx, 0x54fa50e0
xor edx, edx
div ecx
or eax, 0x3c265a0a
mov ecx, 0xb99ecf39
xor edx, edx
div ecx
add eax, 0xd20fc877
xor eax, 0x2ee2b05
mov ecx, dword [esp + 0x34]
cmp ecx, dword [esp + 0x3c]
setl cl
mov byte [esp + 0x1b], cl
cmp eax, 0xf1f4c3d7
ja 0x1005f76d
mov al, byte [esp + 0x1b]
test al, 1
jne 0x1005e7b8
jmp 0x1005e7e0
call fcn.10099e47
mov ecx, 0x100
cdq
idiv ecx
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x34]
add eax, 1
mov dword [esp + 0x34], eax
jmp 0x1005e43b
mov dword [esp], 8
mov dword [esp + 4], 8
mov dword [esp + 8], 0x1c
call fcn.10026af0
mov dword [esp], 0x1c
mov dword [esp + 4], 0x26
call fcn.10046eb0
mov dword [esp + 0x30], 0
mov eax, dword [0x100d0e70]
xor eax, dword [0x100d0e74]
or eax, 0x413157db
imul eax, eax, 0x4ea6d3c2
xor eax, 0xefe18e11
or eax, 0x4350e6b4
sub eax, 0xf6a5d1e6
imul eax, eax, 0x7b4e12a
add eax, 0x4da53aeb
or eax, 0x6e224ff6
and eax, 0xf69b3ec7
or eax, 0xd94f0bc6
sub eax, 0x36fe8ba8
mov ecx, 0x995d5397
xor edx, edx
div ecx
sub eax, 0x2e7d2d28
or eax, 0xc0a7c331
xor eax, 0xf466a7cc
add eax, 0x65e5bbdb
xor eax, 0xb02aa30
add eax, 0x6814d7c0
or eax, 0xfaaf7ed3
sub eax, 0x16463662
xor eax, 0xcb2fc2d3
sub eax, 0x5f618bd9
sub eax, 0x65e50f1f
and eax, 0x792e0c48
xor eax, 0x2755ec8b
add eax, 0x9390eb93
sub eax, 0x9d973eea
imul eax, eax, 0xe02f44c2
or eax, 0x4d652613
mov ecx, 0x2a642285
xor edx, edx
div ecx
imul eax, eax, 0xe10f42a4
add eax, 0x16ee211d
xor eax, 0x16e7cd3f
sub eax, 0xc1c33343
or eax, 0x2726ba9c
and eax, 0xab531821
sub eax, 0x10cdb5cd
xor eax, 0x2642015c
mov ecx, 0x3aee8941
xor edx, edx
div ecx
mov ecx, 0xde801d29
xor edx, edx
div ecx
sub eax, 0x2b33f1f2
or eax, 0x45f38381
xor eax, 0x1af8eec1
xor eax, 0xbdde1a3d
xor eax, 0x7dc76c25
and eax, 0x262e83c9
xor eax, 0xbb6cf406
mov ecx, 0x23fa1578
xor edx, edx
div ecx
imul eax, eax, 0x67d3fa21
and eax, 0x450e4652
sub eax, 0x593327ef
add eax, 0x169b6699
or eax, 0x6a61243b
imul eax, eax, 0xf4a007da
sub eax, 0xb45cec7c
sub eax, 0xd332bbff
mov ecx, 0x82f6ccaf
xor edx, edx
div ecx
add eax, 0xdd9ad2b4
mov ecx, 0x950c0828
xor edx, edx
div ecx
imul eax, eax, 0xb2e26333
xor eax, 0xb81cbd87
add eax, 0xda97391d
xor eax, 0x98dc7a7a
and eax, 0xb76f81ec
mov ecx, 0x38f2654e
xor edx, edx
div ecx
xor eax, 0x798868e6
sub eax, 0x44cab4fe
add eax, 0xaeb69509
add eax, 0x68de2da3
mov ecx, 0x444b2db5
xor edx, edx
div ecx
or eax, 0x3850ea71
xor eax, 0xc5ef460
cmp eax, 0xb5dcf08
je 0x1005f772
mov eax, dword [0x100d0e78]
sub eax, dword [0x100d0e7c]
add eax, 0x3494dc60
imul eax, eax, 0xc823bf39
mov ecx, 0xb7425713
xor edx, edx
div ecx
or eax, 0x9452ab28
and eax, 0x77731acc
or eax, 0xe1cfe4e5
or eax, 0x64a0bd92
and eax, 0x8deb527a
imul eax, eax, 0xde135db2
sub eax, 0x42253b7a
mov ecx, 0x49f64e7f
xor edx, edx
div ecx
and eax, 0x5b4bfda
imul eax, eax, 0xa172b338
or eax, 0xcf4e911b
sub eax, 0x773f513c
xor eax, 0x85ea1f0b
add eax, 0x9a6a306e
mov ecx, 0xe1a1ff5
xor edx, edx
div ecx
and eax, 0x34b45dc8
and eax, 0xcb2b63f7
imul eax, eax, 0x69dd394b
sub eax, 0x97adf82
or eax, 0x6b91e7e0
xor eax, 0x8073efd4
mov ecx, 0x293f7e93
xor edx, edx
div ecx
and eax, 0xc2898608
sub eax, 0x4bf189be
or eax, 0x47060f55
mov ecx, 0x6e2812f4
xor edx, edx
div ecx
imul eax, eax, 0xa53f0c99
or eax, 0xaac449e
xor eax, 0x72b0250a
mov ecx, 0xfbb49c04
xor edx, edx
div ecx
sub eax, 0x3165bfed
imul eax, eax, 0x4fb9e469
xor eax, 0xb7d34334
and eax, 0x9dfe8522
and eax, 0x8ea494fc
xor eax, 0xd2209cc4
mov ecx, 0xdcc54bb0
xor edx, edx
div ecx
xor eax, 0xb9f74d61
and eax, 0xa4dc1851
sub eax, 0xdfa00324
or eax, 0xc1fecd65
imul eax, eax, 0x63ee0f5b
mov ecx, 0xb0206cd4
xor edx, edx
div ecx
and eax, 0x84c059ad
xor eax, 0x3b410
sub eax, 0x1758c62e
sub eax, 0xd6bf4583
or eax, 0xb1c52588
or eax, 0xc6404208
mov ecx, 0xcb142117
xor edx, edx
div ecx
add eax, 0xc06e7ba6
or eax, 0x3401c319
and eax, 0xb244afa
imul eax, eax, 0x96e84c7
mov ecx, 0x95eea084
xor edx, edx
div ecx
sub eax, 0x21d70cc9
add eax, 0x98c5402c
xor eax, 0x81d81000
add eax, 0x333db9f0
or eax, 0x9cc01e4f
and eax, 0x8bd6bde2
or eax, 0x5a08ff62
sub eax, 0x96fb2c32
mov ecx, 0x990c8bf6
xor edx, edx
div ecx
xor eax, 0x2169c5ce
or eax, 0x7977cbc8
xor eax, 0x53ee225c
imul eax, eax, 0x9608689d
sub eax, 0xddb5fcc1
mov ecx, dword [esp + 0x30]
cmp ecx, dword [esp + 0x3c]
setl cl
mov byte [esp + 0x1a], cl
cmp eax, 0x80dfa9ce
je 0x1005f772
mov al, byte [esp + 0x1a]
test al, 1
jne 0x1005eb94
jmp 0x1005f6ab
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x30]
movsx eax, byte [eax + ecx]
mov ecx, 2
cdq
idiv ecx
cmp edx, 0
jne 0x1005ef61
mov eax, dword [0x100d0e80]
or eax, dword [0x100d0e84]
and eax, 0x7157402b
mov ecx, 0xe3cb28fb
xor edx, edx
div ecx
or eax, 0x8ccc39b6
and eax, 0xcbda38e7
xor eax, 0xe285088f
xor eax, 0x2764df4
sub eax, 0x58aa9ac8
and eax, 0x2bfa7378
or eax, 0x914e3d83
add eax, 0x84359018
mov ecx, 0x3d2342cc
xor edx, edx
div ecx
or eax, 0x4c105e
xor eax, 0x415f2451
mov ecx, 0xee1a8f69
xor edx, edx
div ecx
and eax, 0x817ae20d
sub eax, 0xbd849280
sub eax, 0x3126984e
or eax, 0xd49f259f
sub eax, 0x472d230c
imul eax, eax, 0xef2f0531
sub eax, 0xa340aba
or eax, 0x422fabe8
and eax, 0x2f2324b1
or eax, 0x89a807ea
or eax, 0x58aad8a1
sub eax, 0x74ee2849
xor eax, 0xa4fbd9fd
imul eax, eax, 0xec19cfaf
or eax, 0x9d0c258
xor eax, 0x208a4572
imul eax, eax, 0xbdf8237f
add eax, 0xc448ba74
and eax, 0x472e8405
mov ecx, 0xa349e5d7
xor edx, edx
div ecx
and eax, 0xc82aba2b
xor eax, 0xb715ea9d
add eax, 0x60a9985
and eax, 0x1245af41
mov ecx, 0x67bc73c5
xor edx, edx
div ecx
imul eax, eax, 0x36783fe0
add eax, 0x3e20975f
or eax, 0x370ed714
and eax, 0x3f44eaa6
add eax, 0x15c16321
sub eax, 0xab328554
and eax, 0x2136b92
and eax, 0xc44150e3
or eax, 0x66a4f73b
xor eax, 0xaf3729b5
and eax, 0xca73f67a
and eax, 0x2d4eb06d
imul eax, eax, 0xb8ddc5a6
add eax, 0xdfc50e9b
add eax, 0xa41919df
mov ecx, 0x2bdd4dcc
xor edx, edx
div ecx
mov ecx, 0x59461222
xor edx, edx
div ecx
and eax, 0xb9db4b3c
mov ecx, 0x5e3429b2
xor edx, edx
div ecx
and eax, 0x3aa6d088
sub eax, 0x6e05d410
or eax, 0xad6817f8
or eax, 0x2a55a348
mov ecx, 0x12a9bd17
xor edx, edx
div ecx
and eax, 0x3913f883
xor eax, 0xc8f5fbc7
xor eax, 0x5c6ec303
and eax, 0x5b473ecf
mov ecx, 0x8d4404df
xor edx, edx
div ecx
imul eax, eax, 0xa576f807
sub eax, 0x37cd7f31
or eax, 0xac6d78ca
sub eax, 0x9fec526c
cmp eax, 0x3d1b07c4
jbe 0x1005f777
mov eax, dword [0x100d0e88]
xor edx, edx
div dword [0x100d0e8c]
and eax, 0x6a2116da
imul eax, eax, 0x28d21e04
imul eax, eax, 0xc792d825
xor eax, 0xe2eea216
xor eax, 0x56ae2fde
mov ecx, 0x5b610683
xor edx, edx
div ecx
add eax, 0xa103bd93
add eax, 0xf186dc33
sub eax, 0x1be93643
xor eax, 0x45a4539f
xor eax, 0x62127daf
add eax, 0x86758993
sub eax, 0xe2148abf
or eax, 0x69640f66
or eax, 0xeeddea3d
and eax, 0xa1415835
imul eax, eax, 0xe3e1bad2
imul eax, eax, 0x8457f3fe
xor eax, 0xb564bf57
and eax, 0x3c3de127
sub eax, 0xedd8d66c
or eax, 0xc8bb79bf
sub eax, 0x200ab79a
mov ecx, 0xd9f3e8ae
xor edx, edx
div ecx
add eax, 0x1a250cc0
sub eax, 0x2c85005f
sub eax, 0x56a8f373
xor eax, 0x1fe6a04f
and eax, 0xb1f17553
mov ecx, 0x651f740f
xor edx, edx
div ecx
sub eax, 0xe78d6590
xor eax, 0xe4f85430
and eax, 0x78e1b349
xor eax, 0xb05ead15
add eax, 0x5cefbc95
sub eax, 0xd0778f92
add eax, 0xad1d749a
or eax, 0xe48da33e
and eax, 0x813b97d7
add eax, 0x22ee8e17
and eax, 0x12828148
add eax, 0x6df3c451
imul eax, eax, 0xbff9f8af
or eax, 0x1297e72a
or eax, 0x52a0b39f
sub eax, 0xb5f0070
and eax, 0x4bdc2f1e
sub eax, 0x679752ac
and eax, 0xa36b6caa
and eax, 0xbc8730a3
mov ecx, 0x6f9a0e18
xor edx, edx
div ecx
or eax, 0x824781ad
xor eax, 0xdff9a9e2
sub eax, 0xa6b23192
or eax, 0xe21bb496
mov ecx, 0x8c546041
xor edx, edx
div ecx
mov ecx, 0xf5253ea7
xor edx, edx
div ecx
mov ecx, 0xc1b2ff6a
xor edx, edx
div ecx
sub eax, 0xc3badad8
mov ecx, 0x877ad992
xor edx, edx
div ecx
sub eax, 0xe178646e
imul eax, eax, 0xd0b31f20
imul eax, eax, 0xce341bac
sub eax, 0x657f8076
and eax, 0x458c13ed
and eax, 0x6464a095
sub eax, 0x2d28db69
xor eax, 0x9d3ca220
xor eax, 0xd671b0aa
sub eax, 0xce7c3a3e
sub eax, 0xe812a6d0
and eax, 0x12fb56dc
mov dword [esp + 0x2c], 0
cmp eax, 0xecff5827
je 0x1005ed5d
jmp 0x1005ef11
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x30]
movsx ecx, byte [ecx + edx]
cmp eax, ecx
jge 0x1005ef5c
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x30]
movsx eax, byte [eax + ecx]
add eax, dword [esp + 0x2c]
mov ecx, 0x100
cdq
idiv ecx
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x30]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x2c]
add eax, 1
mov dword [esp + 0x2c], eax
jmp 0x1005ef11
jmp 0x1005f696
mov eax, dword [0x100d0e90]
sub eax, dword [0x100d0e94]
xor eax, 0xe2b8ce13
xor eax, 0xaa907a2
sub eax, 0x411ac36f
add eax, 0x147df936
add eax, 0xb4f50bd3
imul eax, eax, 0xee7f30e3
or eax, 0x7ccaca1f
or eax, 0x1d17900e
and eax, 0xded42010
sub eax, 0x2ae14c3e
or eax, 0x9e39edd2
xor eax, 0x63d2d8c0
imul eax, eax, 0x7c2f4c1f
and eax, 0x3b2ebac4
xor eax, 0xa03d47ac
sub eax, 0x9e960810
xor eax, 0xf670b734
xor eax, 0x3ad8f217
add eax, 0x2666b530
and eax, 0x27812e4a
sub eax, 0x69fd295f
add eax, 0x8c53a698
mov ecx, 0x2756a20b
xor edx, edx
div ecx
xor eax, 0x281e6ecb
and eax, 0xd21b0bdd
xor eax, 0x4b8161c5
xor eax, 0x587884f6
or eax, 0x8e96fa59
add eax, 0xf5723d92
xor eax, 0x89b35f56
xor eax, 0x425d15be
or eax, 0x6e113c9d
or eax, 0x7111d195
mov ecx, 0x40a539f9
xor edx, edx
div ecx
mov ecx, 0xabbdba4b
xor edx, edx
div ecx
xor eax, 0x381132d9
xor eax, 0x7e7a4734
mov ecx, 0xc15cf05a
xor edx, edx
div ecx
and eax, 0x69627c06
add eax, 0xc0aac1af
xor eax, 0x52722517
imul eax, eax, 0x623f443f
or eax, 0x162c2198
imul eax, eax, 0x324e0f95
imul eax, eax, 0x5cc96819
xor eax, 0xb3ec8ed0
xor eax, 0x4df4cb42
imul eax, eax, 0x3c230815
add eax, 0x82a03bab
add eax, 0x7918c4c2
mov ecx, 0xeb97356f
xor edx, edx
div ecx
imul eax, eax, 0x30800021
sub eax, 0x685504c4
sub eax, 0x71b1c391
imul eax, eax, 0x6bbcfe4f
or eax, 0xe9e57a57
mov ecx, 0x3413ce88
xor edx, edx
div ecx
sub eax, 0x413cd42
mov ecx, 0x56bf4310
xor edx, edx
div ecx
mov ecx, 0x9bc27594
xor edx, edx
div ecx
and eax, 0x4fc6d966
mov ecx, 0x7df807c7
xor edx, edx
div ecx
mov ecx, 0xea42ce6
xor edx, edx
div ecx
sub eax, 0x4237a01e
imul eax, eax, 0xb840f732
add eax, 0x10993743
sub eax, 0xc1a3d43f
imul eax, eax, 0x472b0b54
add eax, 0xf7157003
imul eax, eax, 0x8fb148f6
add eax, 0xc84be253
and eax, 0xe9fd52b6
cmp eax, 0x2a1038ed
jbe 0x1005f784
mov eax, dword [0x100d0e98]
imul eax, dword [0x100d0e9c]
mov ecx, 0x3428f24c
xor edx, edx
div ecx
or eax, 0x67ff0ee4
imul eax, eax, 0xd3d6b858
and eax, 0x7949d019
add eax, 0xa3aea06c
add eax, 0xa5031d5f
and eax, 0x29c129a
and eax, 0xdcb23e34
or eax, 0xd172ac82
xor eax, 0xaba5827d
and eax, 0xb4035c8
sub eax, 0x444981a6
sub eax, 0x98369794
mov ecx, 0x4bc2643a
xor edx, edx
div ecx
and eax, 0xc7ad47
imul eax, eax, 0xc7382961
sub eax, 0x24f2133
xor eax, 0x4932e40c
add eax, 0x1562a9de
sub eax, 0x4cfece44
or eax, 0x7ace17eb
xor eax, 0x115a0609
xor eax, 0xc49a59da
and eax, 0x384b942e
and eax, 0x782088a8
add eax, 0xd0ec66d9
add eax, 0x57604ff2
and eax, 0x855ba474
mov ecx, 0x5ff2eba7
xor edx, edx
div ecx
imul eax, eax, 0xe3aaffc
imul eax, eax, 0xd7c6cf9d
mov ecx, 0xe869a7c0
xor edx, edx
div ecx
sub eax, 0xbc270150
and eax, 0x8e9fe688
and eax, 0x428c32ae
xor eax, 0x351e17e2
add eax, 0xaee66de9
mov ecx, 0xdd1260c2
xor edx, edx
div ecx
sub eax, 0xf9882e0c
or eax, 0x63f6f00d
sub eax, 0x44b1fe8e
xor eax, 0x7e38bc8d
mov ecx, 0x98094cca
xor edx, edx
div ecx
imul eax, eax, 0xf419e979
and eax, 0x4f1660
imul eax, eax, 0xa9fa5cc8
and eax, 0x5655cf1a
and eax, 0xd4081e0d
and eax, 0xebcdb433
and eax, 0xbc12e7c5
imul eax, eax, 0x407e8d88
add eax, 0x2bfc13ca
mov ecx, 0x9c616f41
xor edx, edx
div ecx
imul eax, eax, 0x16323d39
and eax, 0x2dc8d35
sub eax, 0x903bf0ec
imul eax, eax, 0xdd768b9a
xor eax, 0x1eb3b9b7
xor eax, 0x6e3ec07
mov ecx, 0x3502ad40
xor edx, edx
div ecx
and eax, 0x15aa364
add eax, 0x798848be
mov ecx, 0x2d2efb43
xor edx, edx
div ecx
add eax, 0x97e1c50b
xor eax, 0x8e7c5a00
mov ecx, 0x97f4ae22
xor edx, edx
div ecx
and eax, 0xe9e72659
sub eax, 0x9c8d15cf
mov ecx, 0xa8883385
xor edx, edx
div ecx
mov ecx, 0x86cf4775
xor edx, edx
div ecx
or eax, 0x66cbf89c
and eax, 0xb7aab8
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x30]
movsx ecx, byte [ecx + edx]
mov dword [esp + 0x28], ecx
cmp eax, 0x876126
jae 0x1005f112
jmp 0x1005f2df
mov eax, dword [0x100d0ea0]
xor edx, edx
div dword [0x100d0ea4]
sub eax, 0x677066c
imul eax, eax, 0x8c5367ff
add eax, 0x9bbca230
add eax, 0xc25eae3f
xor eax, 0x5a235a69
mov ecx, 0xdb7dd38f
xor edx, edx
div ecx
and eax, 0x2a3f98bd
mov ecx, 0xa06043b2
xor edx, edx
div ecx
sub eax, 0x3fba1716
add eax, 0xa256cbd5
mov ecx, 0x999096d5
xor edx, edx
div ecx
imul eax, eax, 0x5135d9de
add eax, 0x49b4d002
add eax, 0x650c9be9
sub eax, 0x44241e02
and eax, 0x1df98ef7
and eax, 0xecf70681
mov ecx, 0x968f42c
xor edx, edx
div ecx
sub eax, 0x3fb7cdf1
xor eax, 0x7d7e2f97
sub eax, 0x37d4c23c
add eax, 0x52d398cd
and eax, 0xd26d1dac
imul eax, eax, 0x4475c6c
or eax, 0xdced5124
mov ecx, 0xc7a8850b
xor edx, edx
div ecx
add eax, 0x8dbb8657
xor eax, 0x9b554b35
mov ecx, 0x2cb0769e
xor edx, edx
div ecx
sub eax, 0x926261db
mov ecx, 0x87fba23a
xor edx, edx
div ecx
imul eax, eax, 0x2f2f8d2c
add eax, 0xf345a8b0
mov ecx, 0xbe9a3862
xor edx, edx
div ecx
xor eax, 0xdd85a2d6
add eax, 0x33e3d2d
xor eax, 0x25912f6a
or eax, 0xb719af71
and eax, 0x13a2d52e
sub eax, 0xf87fb183
sub eax, 0x61f4a3b8
sub eax, 0x326936fd
mov ecx, 0x14b4e6a0
xor edx, edx
div ecx
or eax, 0xfcc86f73
add eax, 0x5878fce4
imul eax, eax, 0x53c0e244
sub eax, 0x57640ac4
add eax, 0xfeda2f67
xor eax, 0x7a74e949
mov ecx, 0x5925b0fd
xor edx, edx
div ecx
xor eax, 0xd904356b
and eax, 0x9a9f7a73
imul eax, eax, 0xbdcf0e40
or eax, 0xffc1c395
or eax, 0x855d4da
mov ecx, 0xaa87bfc9
xor edx, edx
div ecx
sub eax, 0x4f8a40a7
imul eax, eax, 0xf2ffb40d
mov ecx, 0xdc1b81ef
xor edx, edx
div ecx
sub eax, 0xa835dfa6
sub eax, 0x6cac0b53
xor eax, 0xe8f906c6
add eax, 0x22f47ad6
mov ecx, 0x27805310
xor edx, edx
div ecx
add eax, 0x3bf3d3ac
and eax, 0x5bbca87a
add eax, 0x4938ecff
and eax, 0x2faa5d7d
add eax, 0xbbd381e1
xor eax, 0x9aac6798
and eax, 0x6d2dc7a8
sub eax, 0x8b0c374b
cmp eax, 0xae03abfc
je 0x1005f799
mov eax, dword [0x100d0ea8]
xor eax, dword [0x100d0eac]
imul eax, eax, 0x9ef3f06b
mov ecx, 0x511852a5
xor edx, edx
div ecx
sub eax, 0xdabf138e
mov ecx, 0x823bfdda
xor edx, edx
div ecx
or eax, 0x66e10702
add eax, 0xf52008c0
xor eax, 0xd4a8fc6b
imul eax, eax, 0xa458cffe
xor eax, 0xdf2ef97d
or eax, 0x9e1b1755
xor eax, 0x2f262b62
and eax, 0xc4ba38a
xor eax, 0x233f666a
xor eax, 0xd0ca6645
add eax, 0xffc91d44
add eax, 0x4c13b103
and eax, 0xa8bf846d
xor eax, 0x993c31c
add eax, 0xb294e5af
mov ecx, 0x6ae3a924
xor edx, edx
div ecx
or eax, 0xa86f95c3
add eax, 0x45ce4841
xor eax, 0x694a103b
sub eax, 0x6603afaa
add eax, 0xab09c7b8
mov ecx, 0xba9891e0
xor edx, edx
div ecx
sub eax, 0xe97d82da
and eax, 0xa7d456e0
add eax, 0x7d5d6bbe
and eax, 0xd0bbe1b6
or eax, 0x5cabc133
xor eax, 0xd29d58f3
mov ecx, 0x99c2294c
xor edx, edx
div ecx
xor eax, 0xbdb7f6c8
xor eax, 0xc68c9786
xor eax, 0x3fb9e0d5
and eax, 0xabf1e674
imul eax, eax, 0xad1f8022
sub eax, 0x28a584fd
sub eax, 0x62cca1e6
add eax, 0x547e5ff3
xor eax, 0x31b176b3
or eax, 0x928c5da5
and eax, 0x2413e904
mov ecx, 0x85299b35
xor edx, edx
div ecx
sub eax, 0x2490db9d
and eax, 0xd32ea
mov ecx, 0x804a7e2d
xor edx, edx
div ecx
imul eax, eax, 0xad3c8e3a
imul eax, eax, 0xe75d803a
or eax, 0xd27511ef
or eax, 0x7b8c77a4
sub eax, 0x1fe0d7fa
imul eax, eax, 0x247e703
xor eax, 0x503f6c0c
xor eax, 0xd577029b
or eax, 0x2b942e77
sub eax, 0x4a00c741
mov ecx, 0x87d4750d
xor edx, edx
div ecx
and eax, 0xab4576d4
sub eax, 0xcd14954e
xor eax, 0xa21ca085
imul eax, eax, 0xe8062656
imul eax, eax, 0xede27082
sub eax, 0xc6066a5
and eax, 0x403bf9d7
and eax, 0x690194ec
and eax, 0x416cc50c
xor eax, 0xe24139f3
sub eax, 0xe5cc79e0
xor eax, 0x92f9fac
add eax, 0xb13ae91e
cmp dword [esp + 0x28], 0
setg cl
mov byte [esp + 0x19], cl
cmp eax, 0x6fcd18ec
jbe 0x1005f49a
mov al, byte [esp + 0x19]
test al, 1
jne 0x1005f65d
jmp 0x1005f691
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x30]
movsx eax, byte [eax + ecx]
imul eax, dword [esp + 0x28]
mov ecx, 0x100
cdq
idiv ecx
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x30]
mov byte [eax + ecx], dl
mov eax, dword [esp + 0x28]
add eax, 0xffffffff
mov dword [esp + 0x28], eax
jmp 0x1005f2df
jmp 0x1005f696
jmp 0x1005f69b
mov eax, dword [esp + 0x30]
add eax, 1
mov dword [esp + 0x30], eax
jmp 0x1005e818
mov eax, dword [esp + 0x38]
mov dword [esp + 0x14], eax
cmp eax, 0
je 0x1005f6c8
mov eax, dword [esp + 0x14]
mov dword [esp], eax
call fcn.1007916a
lea eax, [esp + 0x50]
mov dword [esp], eax
call fcn.1005f7a0
lea edx, [esp + 0x40]
lea ecx, [esp + 0x50]
lea eax, [esp + 0x58]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.1005f950
lea ecx, [esp + 0x48]
lea eax, [esp + 0x40]
mov dword [esp], eax
call fcn.1005fc50
sub esp, 4
lea ecx, [esp + 0x48]
call fcn.1005fcc0
fstp qword [esp + 0x20]
movsd xmm0, qword [esp + 0x20]
cvtsi2sd xmm1, dword [ebp + 8]
ucomisd xmm0, xmm1
jb 0x1005f72a
jmp 0x1005f72f
jmp 0x1005e0a3
xor eax, eax
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x64]
xor ecx, ebp
call fcn.1007916f
mov eax, dword [esp + 0x10]
mov esp, ebp
pop ebp
ret
mov dword [esp + 0x3c], 0xbb8
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call fcn.10079161
mov dword [esp + 0x38], eax
mov dword [esp + 0x34], 0
jmp 0x1005e25e
jmp 0x1005e5ed
jmp 0x1005e9c1
mov dword [esp + 0x2c], 0
jmp 0x1005ed5d
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x30]
movsx eax, byte [eax + ecx]
mov dword [esp + 0x28], eax
jmp 0x1005f112
jmp 0x1005f49a